//----------------------------------------------------------------------------------------------------------------------
// (C) Copyright 2008  Macro Image Technology Co., LTd. , All rights reserved
// 
// This source code is the property of Macro Image Technology and is provided
// pursuant to a Software License Agreement. This code's reuse and distribution
// without Macro Image Technology's permission is strictly limited by the confidential
// information provisions of the Software License Agreement.
//-----------------------------------------------------------------------------------------------------------------------
//
// File Name   		:  OSDMENU.H
// Description 		:  This file contains typedefine for the driver files	
// Ref. Docment		: 
// Revision History 	:

#ifndef		__OSDMENU_H__
#define		__OSDMENU_H__

// -----------------------------------------------------------------------------
// Struct/Union Types and define
// -----------------------------------------------------------------------------

// menu text row, col
#define 	MenuTotalRow	14			// menu total row max
#define		MenuTitleRow	2			// menu title row max
#define		MenuTitleCol	26			// menu title text length
#define		MenuNameCol		14			// menu name text length
#define 	MenuItemCol		10			// menu item text length
#define		MenuMargin		1			// Menu margin from start&end.(Left:1_14_1, Right:1_10_1)

// menu attribute
#define		MENU_ITEM		0x01		//Item selection
#define		MENU_VALUE		0x02		//value adjust
#define		MENU_FUNC		0x04		//func call
#define		MENU_CTITLE		0x08		//cam title
#define		MENU_SUB		0x10		//enter sub menu
#define		MENU_SKIP		0x20		//skip menu
#define 	MENU_TEXT		0x40		//print text
#define		MENU_EXIT		0x80		//exit menu or return prev. menu
#define 	MENU_NULL		0x00		//blank

#define 	GetArrayMax(pArray)		sizeof(pArray)/sizeof(pArray[0])

// ----------------------------------------------------------------------
// Static Global Data section variables
// ----------------------------------------------------------------------

static ROMDATA WORD FirmwareVer[][MenuItemCol]		= {{'1','.','1','.','9','2','5','0','9','5'},{'1','.','1','.','9','2','5','0','9','5'}};
static ROMDATA WORD FirmwareDate[][MenuItemCol]	= {{'2','0','1','9','.','0','1','.','0','4'},{'2','0','1','9','.','0','1','.','0','4'}};

// define common menu & Item
static ROMDATA WORD RetMenu[][MenuNameCol]			= {{'R','E','T','U','R','N',' ',' ',' ',' ',' ',' ',' ',' '},{303,304}};
static ROMDATA WORD DefaultMenu[][MenuNameCol]		= {{'D','E','F','A','U','L','T',' ',' ',' ',' ',' ',' ',' '},{394,381}};
static ROMDATA WORD SizePosition[][MenuNameCol]	= {{'S','I','Z','E','/','P','O','S','I','T','I','O','N',' '},{456,457,47,381,382}};
static ROMDATA WORD AreaMenu[][MenuNameCol]		= {{'A','R','E','A',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},{376,377}};
static ROMDATA WORD AreaDisplay[][MenuNameCol]		= {{'A','R','E','A',' ','D','I','S','P','L','A','Y',' ',' '},{376,377,390,391}};
static ROMDATA WORD LevelMenu[][MenuNameCol]		= {{'L','E','V','E','L',' ',' ',' ',' ',' ',' ',' ',' ',' '},{287,288}};
static ROMDATA WORD PositionMenu[][MenuNameCol]	= {{'P','O','S','I','T','I','O','N',' ',' ',' ',' ',' ',' '},{381,382}};
static ROMDATA WORD SizeMenu[][MenuNameCol]		= {{'S','I','Z','E',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},{456,457}};

static ROMDATA WORD OnOffItem[][MenuItemCol]	= {{'O','F','F',' ',' ',' ',' ',' ',' ',' '},	{'O','N',' ',' ',' ',' ',' ',' ',' ',' '},	{284},	{285}};
static ROMDATA WORD OnOffSub[][MenuItemCol]	= {{'O','F','F',' ',' ',' ',' ',' ',' ',' '},	{'O','N',' ',' ',' ',' ',' ',' ',' ','>'},	{284},	{285,0,0,0,0,0,0,0,0,62}};
static ROMDATA WORD WaitOkItem[][MenuItemCol]	= {{'P','R','E','S','S',' ','O','K',' ',' '},	{'W','A','I','T','.','.','.',' ',' ',' '},	{421,407,0,79,75},	{421,299,300,46,46}};
static ROMDATA WORD TestOkItem[][MenuItemCol]	= {{'P','R','E','S','S',' ','O','K',' ',' '},	{'T','E','S','T','.','.','.',' ',' ',' '},	{421,407,0,79,75},	{421,299,300,46,46}};
static ROMDATA WORD SubItem[][MenuItemCol]		= {{' ',' ',' ',' ',' ',' ',' ',' ',' ','>'},	{0,0,0,0,0,0,0,0,0,62}};
static ROMDATA WORD BlankItem[][MenuItemCol]	= {{' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},	{0,0,0,0,0,0,0,0,0,0}};
static ROMDATA WORD SkipItem[][MenuItemCol] 	= {{'-','-','-','-',' ',' ',' ',' ',' ',' '},	{45,45,45,45}};
static ROMDATA WORD ColorItem[][MenuItemCol] 	= {
	// eng
	{'B','L','A','C','K',' ',' ',' ',' ',' '},
	{'B','L','U','E',' ',' ',' ',' ',' ',' '},
	{'G','R','A','Y',' ',' ',' ',' ',' ',' '},
	{'Y','E','L','L','O','W',' ',' ',' ',' '},
	{'W','H','I','T','E',' ',' ',' ',' ',' '},
	{'B','L','A','C','K',' ','O','P',' ',' '},
	{'W','H','I','T','E',' ','O','P',' ',' '},
	{'N','O',' ','C','O','L','O','R',' ',' '},
	// chn
	{298,297},			// black
	{353,297},			// blue
	{363,297},			// gray
	{350,297},			// yellow
	{264,297},			// white
	{318,329,298,297},	// black op(transparent black)
	{318,329,264,297},	// white op(transparent white)
	{318,329}			// no color
};



//--------------------------------------------------------------------------------------------------------------------------
// 0. MAIN MENU  
//--------------------------------------------------------------------------------------------------------------------------

// main menu title
static ROMDATA WORD MainMenuTitle[][MenuTitleCol]	= { 
	// eng
	{'M','A','I','N',' ','M','E','N','U',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '}, 
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{257,258,259},	// main menu
	{0},
};

// main menu
static ROMDATA WORD FocusMenu[][MenuNameCol]		= {{'F','O','C','U','S',' ',' ',' ',' ',' ',' ',' ',' ',' '},{278,279,434,280}};
static ROMDATA WORD ExposureMenu[][MenuNameCol]	= {{'E','X','P','O','S','U','R','E',' ',' ',' ',' ',' ',' '},{262,263}};
static ROMDATA WORD WBMenu[][MenuNameCol]			= {{'W','H','I','T','E',' ','B','A','L','A','N','C','E',' '},{264,265,266}};
static ROMDATA WORD DayNMenu[][MenuNameCol]		= {{'D','A','Y',' ','&',' ','N','I','G','H','T',' ',' ',' '},{274,275}};
static ROMDATA WORD DNRMenu[][MenuNameCol]			= {{'D','N','R',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},{270,271,272,273}};
static ROMDATA WORD PMMenu[][MenuNameCol]			= {{'P','R','I','V','A','C','Y',' ',' ',' ',' ',' ',' ',' '},{370,371,372,373}};
static ROMDATA WORD Effect[][MenuNameCol]			= {{'E','F','F','E','C','T',' ',' ',' ',' ',' ',' ',' ',' '},{338,334,362,339}};
static ROMDATA WORD Special[][MenuNameCol]			= {{'S','P','E','C','I','A','L',' ',' ',' ',' ',' ',' ',' '},{276,277}};
static ROMDATA WORD Setup[][MenuNameCol]			= {{'S','E','T','U','P',' ',' ',' ',' ',' ',' ',' ',' ',' '},{395,382}};
static ROMDATA WORD EngMenu[][MenuNameCol]			= {{'E','N','G','.',' ','M','E','N','U',' ',' ',' ',' ',' '},{398,399,258,259}};
static ROMDATA WORD ExitMenu[][MenuNameCol]		= {{'E','X','I','T',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},{282,283}};

// main menu info
static ROMDATA OSD_MENU_INFO MainMenuInfo[] = {
	//menu,					attb,			Item,				init,	max,					title
	{(PWORD)FocusMenu,		MENU_SUB,		(PWORD)SubItem,		0,		GetArrayMax(SubItem)/2,	(PWORD)MainMenuTitle	},
	{(PWORD)ExposureMenu,	MENU_SUB,		(PWORD)SubItem,		0,		GetArrayMax(SubItem)/2,	(PWORD)MainMenuTitle	},
	{(PWORD)WBMenu,			MENU_SUB,		(PWORD)SubItem,		0,		GetArrayMax(SubItem)/2,	(PWORD)MainMenuTitle	},
	{(PWORD)DayNMenu,		MENU_SUB,		(PWORD)SubItem,		0,		GetArrayMax(SubItem)/2,	(PWORD)MainMenuTitle	},
	{(PWORD)DNRMenu,		MENU_SUB,		(PWORD)SubItem,		0,		GetArrayMax(SubItem)/2,	(PWORD)MainMenuTitle	},
	{(PWORD)PMMenu,			MENU_SUB,		(PWORD)SubItem,		0,		GetArrayMax(SubItem)/2,	(PWORD)MainMenuTitle	},
	{(PWORD)Effect,			MENU_SUB,		(PWORD)SubItem,		0,		GetArrayMax(SubItem)/2,	(PWORD)MainMenuTitle	},
#if defined(__USE_CMOS_PS1400K__)
	{(PWORD)Special,		MENU_SKIP,		(PWORD)SubItem,		0,		GetArrayMax(SubItem)/2,	(PWORD)MainMenuTitle	},
#else
	{(PWORD)Special,		MENU_SUB,		(PWORD)SubItem,		0,		GetArrayMax(SubItem)/2,	(PWORD)MainMenuTitle	},
#endif
	{(PWORD)Setup,			MENU_SUB,		(PWORD)SubItem,		0,		GetArrayMax(SubItem)/2,	(PWORD)MainMenuTitle	},
	{(PWORD)EngMenu,		MENU_SUB,		(PWORD)SubItem,		0,		GetArrayMax(SubItem)/2,	(PWORD)MainMenuTitle	},
	{(PWORD)ExitMenu,		MENU_EXIT,		(PWORD)BlankItem,	0,		GetArrayMax(BlankItem)/2,	(PWORD)MainMenuTitle	},
};

#if !defined(__USE_2MOTOR_LENS__)
//--------------------------------------------------------------------------------------------------------------------------
// 1-1.Focus Menu - normal
//--------------------------------------------------------------------------------------------------------------------------

// focus menu title
static ROMDATA WORD FocusMenuTitle[][MenuTitleCol]	= {
	// eng
	{'F','O','C','U','S',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '}, 
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{278,279,434,280},	// focus
	{0},
};

// focus menu
static ROMDATA WORD FocusMode[][MenuNameCol]		= {{'F','O','C','U','S',' ','M','O','D','E',' ',' ',' ',' '},{434,280,378,369}};
static ROMDATA WORD ZoomStart[][MenuNameCol]		= {{'Z','O','O','M',' ','S','T','A','R','T',' ',' ',' ',' '},{345,280,285,446,381,382}};
static ROMDATA WORD ZoomStop[][MenuNameCol]		= {{'Z','O','O','M',' ','S','T','O','P',' ',' ',' ',' ',' '},{345,280,447,448,381,382}};
static ROMDATA WORD ZoomSpeed[][MenuNameCol]		= {{'Z','O','O','M',' ','S','P','E','E','D',' ',' ',' ',' '},{345,280,400,306}};
static ROMDATA WORD FocusLimit[][MenuNameCol]		= {{'F','O','C','U','S',' ','L','I','M','I','T',' ',' ',' '},{280,281,445,291}};
static ROMDATA WORD AFInterval[][MenuNameCol]		= {{'A','F',' ','I','N','T','E','R','V','A','L',' ',' ',' '},{278,279,434,280,299,300,301,302}};
static ROMDATA WORD ConferMenu[][MenuNameCol]		= {{'C','O','N','F','E','R','E','N','C','E',' ',' ',' ',' '},{374,375,434,280,376,377}};

// focus menu item
static ROMDATA WORD FocusModeItem[][MenuItemCol] = {
	// eng
	{'A','U','T','O',' ',' ',' ',' ',' ',' '},
	{'I','N','T','E','R','V','A','L',' ',' '},
	{'Z','O','O','M',' ','T','R','I','G',' '},
	{'M','A','N','U','A','L',' ',' ',' ',' '},
	// chn
	{278,279},	// auto
	{299,300},	// interval
	{345,280},	// zoom trig
	{286,279},	// manual
};

static ROMDATA WORD ZoomSpeedItem[][MenuItemCol] = {
	// eng
	{'S','L','O','W',' ',' ',' ',' ',' ',' '},
	{'N','O','R','M','A','L',' ',' ',' ',' '},
	{'F','A','S','T',' ',' ',' ',' ',' ',' '},
	{'V','.','F','A','S','T',' ',' ',' ',' '},
	// chn
	{403,400},	// slow
	{404,405},	// normal
	{401,400},	// fast
	{402,400},	// v.fast
};

static ROMDATA WORD FocusLimitItem[][MenuItemCol] = {
#if (defined(__USE_AFZOOM_LENS__)||defined(__USE_2MOTOR_LENS__))
#if defined(__USE_X30X_TAMRON__)
	// eng
	{'1','0','C','M',' ',' ',' ',' ',' ',' '},
	{'3','0','C','M',' ',' ',' ',' ',' ',' '},
	{'1','M',' ',' ',' ',' ',' ',' ',' ',' '},
	{'1','.','5','M',' ',' ',' ',' ',' ',' '},
	{'2','M',' ',' ',' ',' ',' ',' ',' ',' '},
	{'3','M',' ',' ',' ',' ',' ',' ',' ',' '},
	{'6','M',' ',' ',' ',' ',' ',' ',' ',' '},
	{'1','0','M',' ',' ',' ',' ',' ',' ',' '},
	{'I','N','F',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{'1','0',477,328},	// 10cm
	{'3','0',477,328},	// 30cm
	{'1',328},			// 1M
	{'1','.','5',328},	// 1.5M
	{'2',328},			// 2M
	{'3',328},			// 3M
	{'6',328},			// 6M
	{'1','0',328},		// 10M
	{320,321,445},		// INF

#elif defined(__USE_X33X_CHINA__)
	// eng
	{'1','0','C','M',' ',' ',' ',' ',' ',' '},
	{'5','0','C','M',' ',' ',' ',' ',' ',' '},
	{'1','M',' ',' ',' ',' ',' ',' ',' ',' '},
	{'1','.','5','M',' ',' ',' ',' ',' ',' '},
	{'2','M',' ',' ',' ',' ',' ',' ',' ',' '},
	{'3','M',' ',' ',' ',' ',' ',' ',' ',' '},
	{'5','M',' ',' ',' ',' ',' ',' ',' ',' '},
	{'8','M',' ',' ',' ',' ',' ',' ',' ',' '},
	{'2','0','M',' ',' ',' ',' ',' ',' ',' '},
	{'I','N','F',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{'1','0',477,328},	// 10cm
	{'5','0',477,328},	// 50cm
	{'1',328},			// 1M
	{'1','.','5',328},	// 1.5M
	{'2',328},			// 2M
	{'3',328},			// 3M
	{'5',328},			// 5M
	{'8',328},			// 8M
	{'2','0',328},		// 20M
	{320,321,445},		// INF

#elif defined(__USE_X10X_UNION__)
	// eng
	{'1','0','C','M',' ',' ',' ',' ',' ',' '},
	{'3','0','C','M',' ',' ',' ',' ',' ',' '},
	{'1','M',' ',' ',' ',' ',' ',' ',' ',' '},
	{'1','.','5','M',' ',' ',' ',' ',' ',' '},
	{'2','M',' ',' ',' ',' ',' ',' ',' ',' '},
	{'3','M',' ',' ',' ',' ',' ',' ',' ',' '},
	{'6','M',' ',' ',' ',' ',' ',' ',' ',' '},
	{'1','0','M',' ',' ',' ',' ',' ',' ',' '},
	{'I','N','F',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{'1','0',477,328},	// 10cm
	{'3','0',477,328},	// 30cm
	{'1',328},			// 1M
	{'1','.','5',328},	// 1.5M
	{'2',328},			// 2M
	{'3',328},			// 3M
	{'6',328},			// 6M
	{'1','0',328},		// 10M
	{320,321,445},		// INF

#elif defined(__USE_X10X_ZMAX__)
	// eng
	{'5','0','C','M',' ',' ',' ',' ',' ',' '},
	{'1','M',' ',' ',' ',' ',' ',' ',' ',' '},
	{'2','M',' ',' ',' ',' ',' ',' ',' ',' '},
	{'4','M',' ',' ',' ',' ',' ',' ',' ',' '},
	{'7','M',' ',' ',' ',' ',' ',' ',' ',' '},
	{'1','0','M',' ',' ',' ',' ',' ',' ',' '},
	{'1','5','M',' ',' ',' ',' ',' ',' ',' '},
	{'2','0','M',' ',' ',' ',' ',' ',' ',' '},
	{'I','N','F',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{'5','0',477,328},	// 50cm
	{'1',328},			// 1M
	{'2',328},			// 2M
	{'4',328},			// 3M
	{'7',328},			// 5M
	{'1','0',328},		// 10M
	{'1','5',328},		// 10M
	{'2','0',328},		// 10M
	{320,321,445},		// INF

#elif defined(__USE_X12X_UNION__)
	// eng
	{'5','0','C','M',' ',' ',' ',' ',' ',' '},
	{'1','M',' ',' ',' ',' ',' ',' ',' ',' '},
	{'2','M',' ',' ',' ',' ',' ',' ',' ',' '},
	{'4','M',' ',' ',' ',' ',' ',' ',' ',' '},
	{'7','M',' ',' ',' ',' ',' ',' ',' ',' '},
	{'1','0','M',' ',' ',' ',' ',' ',' ',' '},
	{'1','5','M',' ',' ',' ',' ',' ',' ',' '},
	{'2','0','M',' ',' ',' ',' ',' ',' ',' '},
	{'I','N','F',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{'5','0',477,328},	// 50cm
	{'1',328},			// 1M
	{'2',328},			// 2M
	{'4',328},			// 3M
	{'7',328},			// 5M
	{'1','0',328},		// 10M
	{'1','5',328},		// 10M
	{'2','0',328},		// 10M
	{320,321,445},		// INF

#elif defined(__USE_X03X_ZMAX__)
	// eng
	{'5','0','C','M',' ',' ',' ',' ',' ',' '},
	{'1','M',' ',' ',' ',' ',' ',' ',' ',' '},
	{'1','.','5','M',' ',' ',' ',' ',' ',' '},
	{'2','M',' ',' ',' ',' ',' ',' ',' ',' '},
	{'2','.','5','M',' ',' ',' ',' ',' ',' '},
	{'3','M',' ',' ',' ',' ',' ',' ',' ',' '},
	{'5','M',' ',' ',' ',' ',' ',' ',' ',' '},
	{'1','0','M',' ',' ',' ',' ',' ',' ',' '},
	{'I','N','F',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{'5','0',477,328},	// 50cm
	{'1',328},			// 1M
	{'1','.','5',328},	// 1.5M
	{'2',328},			// 2M
	{'2','.','5',328},	// 2.5M
	{'3',328},			// 3M
	{'5',328},			// 5M
	{'1','0',328},		// 10M
	{320,321,445},		// INF

#elif defined(__USE_YT3010_2MOTOR__)
	// eng
	{'5','0','C','M',' ',' ',' ',' ',' ',' '},
	{'1','M',' ',' ',' ',' ',' ',' ',' ',' '},
	{'1','.','5','M',' ',' ',' ',' ',' ',' '},
	{'2','M',' ',' ',' ',' ',' ',' ',' ',' '},
	{'2','.','5','M',' ',' ',' ',' ',' ',' '},
	{'3','M',' ',' ',' ',' ',' ',' ',' ',' '},
	{'5','M',' ',' ',' ',' ',' ',' ',' ',' '},
	{'1','0','M',' ',' ',' ',' ',' ',' ',' '},
	{'I','N','F',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{'5','0',477,328},	// 50cm
	{'1',328},			// 1M
	{'1','.','5',328},	// 1.5M
	{'2',328},			// 2M
	{'2','.','5',328},	// 2.5M
	{'3',328},			// 3M
	{'5',328},			// 5M
	{'1','0',328},		// 10M
	{320,321,445},		// INF

#endif

#else
	// eng
	{'1','0','C','M',' ',' ',' ',' ',' ',' '},
	{'3','0','C','M',' ',' ',' ',' ',' ',' '},
	{'1','M',' ',' ',' ',' ',' ',' ',' ',' '},
	{'1','.','5','M',' ',' ',' ',' ',' ',' '},
	{'2','M',' ',' ',' ',' ',' ',' ',' ',' '},
	{'3','M',' ',' ',' ',' ',' ',' ',' ',' '},
	{'6','M',' ',' ',' ',' ',' ',' ',' ',' '},
	{'1','0','M',' ',' ',' ',' ',' ',' ',' '},
	{'I','N','F',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{'1','0',477,328},	// 10cm
	{'3','0',477,328},	// 30cm
	{'1',328},			// 1M
	{'1','.','5',328},	// 1.5M
	{'2',328},			// 2M
	{'3',328},			// 3M
	{'6',328},			// 6M
	{'1','0',328},		// 10M
	{320,321,445},		// INF
#endif
};

#if (defined(__USE_AFZOOM_LENS__)||defined(__USE_2MOTOR_LENS__))
#define		FOCUS1_ATTB				MENU_ITEM
#define		FOCUS2_ATTB				MENU_VALUE
#define		FOCUS3_ATTB				MENU_VALUE
#define		FOCUS4_ATTB				MENU_ITEM
#define		FOCUS5_ATTB				MENU_ITEM
#define		FOCUS6_ATTB				MENU_VALUE
#define		FOCUS7_ATTB				MENU_SUB
#else
#define		FOCUS1_ATTB				(MENU_ITEM | MENU_SKIP)
#define		FOCUS2_ATTB				(MENU_VALUE | MENU_SKIP)
#define		FOCUS3_ATTB				(MENU_VALUE | MENU_SKIP)
#define		FOCUS4_ATTB				(MENU_ITEM | MENU_SKIP)
#define		FOCUS5_ATTB				(MENU_ITEM | MENU_SKIP)
#define		FOCUS6_ATTB				(MENU_VALUE | MENU_SKIP)
#define		FOCUS7_ATTB				(MENU_SUB | MENU_SKIP)
#endif

// focus menu info
static ROMDATA OSD_MENU_INFO FocusMenuInfo[] = {
	// menu,			attb,			Item,					init,		max,							title
	{(PWORD)FocusMode,	FOCUS1_ATTB,	(PWORD)FocusModeItem,	0,			GetArrayMax(FocusModeItem)/2,	(PWORD)FocusMenuTitle	},
	{(PWORD)ZoomStart,	FOCUS2_ATTB,	NULL,					0,			16,								(PWORD)FocusMenuTitle	},
	{(PWORD)ZoomStop,	FOCUS3_ATTB,	NULL,					0,			16,								(PWORD)FocusMenuTitle	},
	{(PWORD)ZoomSpeed,	FOCUS4_ATTB,	(PWORD)ZoomSpeedItem,	3,			GetArrayMax(ZoomSpeedItem)/2,	(PWORD)FocusMenuTitle	},
	{(PWORD)FocusLimit,	FOCUS5_ATTB,	(PWORD)FocusLimitItem,	1,			GetArrayMax(FocusLimitItem)/2,	(PWORD)FocusMenuTitle	},
	{(PWORD)AFInterval,	FOCUS6_ATTB,	NULL,					5,			255,							(PWORD)FocusMenuTitle	},
	{(PWORD)ConferMenu,	FOCUS7_ATTB,	(PWORD)SubItem,			0,			GetArrayMax(SubItem)/2,			(PWORD)FocusMenuTitle	},
	{(PWORD)RetMenu,	MENU_EXIT,		(PWORD)BlankItem,		0,			GetArrayMax(BlankItem)/2,		(PWORD)FocusMenuTitle	},
};
#else	//__USE_2MOTOR_LENS__
//--------------------------------------------------------------------------------------------------------------------------
// 1-1'.Focus Menu - two motor lens
//--------------------------------------------------------------------------------------------------------------------------

// two motor menu title
static ROMDATA WORD FocusMenuTitle[][MenuTitleCol]	= {
	// eng
	{'F','O','C','U','S',' ','-','2','M','O','T','O','R',' ','L','E','N','S',' ',' ',' ',' ',' ',' ',' ',' '}, 
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{278,279,434,280},	// focus
	{0},
};

// two motor menu
static ROMDATA WORD TwoMotorAfMode[][MenuNameCol]		= {{'A','F',' ','M','O','D','E',' ',' ',' ',' ',' ',' ',' '},{'A','F',' ','M','O','D','E'}};
static ROMDATA WORD TwoMotorScan[][MenuNameCol]			= {{'S','C','A','N','N','I','N','G',' ',' ',' ',' ',' ',' '},{'S','C','A','N','N','I','N','G'}};
static ROMDATA WORD TwoMotorOnePush[][MenuNameCol]		= {{'O','N','E',' ','P','U','S','H',' ',' ',' ',' ',' ',' '},{'O','N','E',' ','P','U','S','H'}};
static ROMDATA WORD TwoMotorSyncTDN[][MenuNameCol]		= {{'S','Y','N','C',' ','T','D','N',' ',' ',' ',' ',' ',' '},{'S','Y','N','C',' ','T','D','N'}};
static ROMDATA WORD TwoMotorInitial[][MenuNameCol]		= {{'I','N','I','T','I','A','L',' ',' ',' ',' ',' ',' ',' '},{'I','N','I','T','I','A','L'}};

// two motor menu item
static ROMDATA WORD TwoMotorAfItem[][MenuItemCol] = {
	// eng
	{'A','U','T','O',' ',' ',' ',' ',' ',' '},
	{'M','A','N','U','A','L',' ',' ',' ',' '},
	// chn
	{278,279},	// auto
	{286,270},	// manual
};

static ROMDATA WORD TwoMotorScanItem[][MenuItemCol] = {
	// eng
	{'H','A','L','F',' ',' ',' ',' ',' ',' '},
	{'F','U','L','L',' ',' ',' ',' ',' ',' '},
	// chn
	{'H','A','L','F'},	// half
	{'F','U','L','L'},	// full
};

// two motor menu info
static ROMDATA OSD_MENU_INFO FocusMenuInfo[] = {
	// menu,				attb,		Item,					init,	max,							title
	{(PWORD)TwoMotorAfMode,	MENU_ITEM,	(PWORD)TwoMotorAfItem,	0,		GetArrayMax(TwoMotorAfItem)/2,	(PWORD)FocusMenuTitle	},
	{(PWORD)TwoMotorScan,	MENU_ITEM,	(PWORD)TwoMotorScanItem,0,		GetArrayMax(TwoMotorScanItem)/2,(PWORD)FocusMenuTitle	},
	{(PWORD)TwoMotorOnePush,MENU_FUNC,	(PWORD)WaitOkItem,		0,		GetArrayMax(WaitOkItem)/2,		(PWORD)FocusMenuTitle	},
	{(PWORD)TwoMotorSyncTDN,MENU_ITEM,	(PWORD)OnOffItem,		0,		GetArrayMax(OnOffItem)/2,		(PWORD)FocusMenuTitle	},
	{(PWORD)TwoMotorInitial,MENU_FUNC,	(PWORD)WaitOkItem,		0,		GetArrayMax(WaitOkItem)/2,		(PWORD)FocusMenuTitle	},
	{(PWORD)RetMenu,		MENU_EXIT,	(PWORD)BlankItem,		0,		GetArrayMax(BlankItem)/2,		(PWORD)FocusMenuTitle	},
};
#endif

//--------------------------------------------------------------------------------------------------------------------------
// 1-7-1. Focus - Conference Menu
//--------------------------------------------------------------------------------------------------------------------------

// conference menu title
static ROMDATA WORD ConferMenuTitle[][MenuTitleCol]	= {
	// eng
	{'C','O','N','F','E','R','E','N','C','E',' ','M','O','D','E',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{374,375,434,280,376,377},	// conference mode
	{0},
};

// conference menu
static ROMDATA WORD ConferMode[][MenuNameCol]		= {{'M','O','D','E',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},{378,369}};
static ROMDATA WORD ConferWidth[][MenuNameCol]		= {{' ','W','I','N','D','O','W',' ','W','I','D','T','H',' '},{0,376,377,292,306}};
static ROMDATA WORD ConferHeight[][MenuNameCol]	= {{' ','W','I','N','D','O','W',' ','H','E','I','G','H','T'},{0,376,377,316,306}};
static ROMDATA WORD ConferXPos[][MenuNameCol]		= {{' ','W','I','N','D','O','W',' ','X','-','P','O','S',' '},{0,376,377,342,265,381,382}};
static ROMDATA WORD ConferYPos[][MenuNameCol]		= {{' ','W','I','N','D','O','W',' ','Y','-','P','O','S',' '},{0,376,377,343,344,381,382}};

// conference menu item

// conference menu info
static ROMDATA OSD_MENU_INFO ConferMenuInfo[] = {
	// menu,				attb,			Item,					init,		max,						title
	{(PWORD)ConferMode,		MENU_ITEM,		(PWORD)OnOffItem,		0,			GetArrayMax(OnOffItem)/2,	(PWORD)ConferMenuTitle	},
	{(PWORD)ConferWidth,	MENU_VALUE,		NULL,					8,			32,							(PWORD)ConferMenuTitle	},
	{(PWORD)ConferHeight,	MENU_VALUE,		NULL,					6,			32,							(PWORD)ConferMenuTitle	},
	{(PWORD)ConferXPos,		MENU_VALUE,		NULL,					24,			64,							(PWORD)ConferMenuTitle	},
	{(PWORD)ConferYPos,		MENU_VALUE,		NULL,					16,			64,							(PWORD)ConferMenuTitle	},
	{(PWORD)RetMenu,		MENU_EXIT,		(PWORD)BlankItem,		0,			GetArrayMax(BlankItem)/2,	(PWORD)ConferMenuTitle	},
};

//--------------------------------------------------------------------------------------------------------------------------
// 2-1. Exposure Menu
//--------------------------------------------------------------------------------------------------------------------------

// exposure menu title
static ROMDATA WORD ExpMenuTitle[][MenuTitleCol]	= { 
	// eng
	{'E','X','P','O','S','U','R','E',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{262,263},	// exposure
	{0},
};

// exposure menu
static ROMDATA WORD AEModeMenu[][MenuNameCol]		= {{'A','E',' ','M','O','D','E',' ',' ',' ',' ',' ',' ',' '},{378,369}};
static ROMDATA WORD ExpShutMenu[][MenuNameCol]		= {{' ','S','H','U','T','T','E','R',' ',' ',' ',' ',' ',' '},{0,307,308,400,306}};
static ROMDATA WORD ExpIrisMenu[][MenuNameCol]		= {{' ','I','R','I','S',' ',' ',' ',' ',' ',' ',' ',' ',' '},{0,263,406}};
static ROMDATA WORD ExpAGCMenu[][MenuNameCol]		= {{' ','A','G','C',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},{0,278,279,312,313,428,429}};
static ROMDATA WORD ExpAGCMaxMenu[][MenuNameCol]	= {{' ','A','G','C',' ','M','A','X',' ',' ',' ',' ',' ',' '},{0,278,279,312,313,428,429,445,291}};
static ROMDATA WORD SensUpMenu[][MenuNameCol]		= {{' ','S','E','N','S',' ','U','P',' ',' ',' ',' ',' ',' '},{0,317,263,306}};
static ROMDATA WORD ExpBrightMenu[][MenuNameCol]	= {{' ','A','E',' ','B','R','I','G','H','T',' ',' ',' ',' '},{0,278,279,262,263,305,306}};
static ROMDATA WORD ExpLensMode[][MenuNameCol]		= {{'L','E','N','S',' ','M','O','D','E',' ',' ',' ',' ',' '},{'L','E','N','S',' ','M','O','D','E'}};
static ROMDATA WORD ExpFlkMode[][MenuNameCol]		= {{'F','L','K',' ','C','O','N','T','R','O','L',' ',' ',' '},{'F','L','K',' ','C','O','N','T','R','O','L'}};

// exposure menu item
static ROMDATA WORD AEModeItem[][MenuItemCol]	= {
#if	defined(__USE_DCIRIS_HALL__) || defined(__USE_P_IRIS_ONLY__)
	// eng
	{'A','U','T','O',' ',' ',' ',' ',' ',' '},
	{'S','H','U','T',' ','F','I','X',' ',' '},
	{'I','R','I','S',' ','F','I','X',' ',' '},
	{'A','G','C',' ','F','I','X',' ',' ',' '},
	{'M','A','N','U','A','L',' ',' ',' ',' '},
	// chn
	{278,279},							// auto
	{307,308,364,433},					// shut fix
	{263,406,364,433},					// iris fix
	{278,279,312,313,428,429,364,433},	// agc fix
	{286,279},							// manual
#else
	// eng
	{'A','U','T','O',' ',' ',' ',' ',' ',' '},
	{'S','H','U','T',' ','F','I','X',' ',' '},
	{'A','G','C',' ','F','I','X',' ',' ',' '},
	{'M','A','N','U','A','L',' ',' ',' ',' '},
	// chn
	{278,279},							// auto
	{307,308,364,433},					// shut fix
	{278,279,312,313,428,429,364,433},	// agc fix
	{286,279},							// manual
#endif
};

static ROMDATA WORD ExpShutItemPal[][MenuItemCol]	= {
	// eng
	{'A','U','T','O',' ',' ',' ',' ',' ',' '},
	{'1','/','2','5',' ',' ',' ',' ',' ',' '},
	{'1','/','5','0',' ',' ',' ',' ',' ',' '},
	{'1','/','1','0','0',' ',' ',' ',' ',' '},
	{'1','/','1','5','0',' ',' ',' ',' ',' '},
	{'1','/','2','0','0',' ',' ',' ',' ',' '},
	{'1','/','2','5','0',' ',' ',' ',' ',' '},
	{'1','/','5','0','0',' ',' ',' ',' ',' '},
	{'1','/','1','0','0','0',' ',' ',' ',' '},
 	{'1','/','2','0','0','0',' ',' ',' ',' '},
	{'1','/','5','0','0','0',' ',' ',' ',' '},	
	{'1','/','1','0','0','0','0',' ',' ',' '},
	// chn
	{278,279},					// auto
	{'1','/','2','5'},
	{'1','/','5','0'},
	{'1','/','1','0','0'},
	{'1','/','1','5','0'},
	{'1','/','2','0','0'},
	{'1','/','2','5','0'},
	{'1','/','5','0','0'},
	{'1','/','1','0','0','0'},
	{'1','/','2','0','0','0'},
	{'1','/','5','0','0','0'},
	{'1','/','1','0','0','0','0'},
};

static ROMDATA WORD ExpShutItemNtsc[][MenuItemCol]	= {
#if defined(__USE_IMX274_4K15P_MODE__)
	// eng
	{'A','U','T','O',' ',' ',' ',' ',' ',' '},
	{'1','/','1','5',' ',' ',' ',' ',' ',' '},
	{'1','/','3','0',' ',' ',' ',' ',' ',' '},
	{'1','/','6','0',' ',' ',' ',' ',' ',' '},
	{'1','/','9','0',' ',' ',' ',' ',' ',' '},
	{'1','/','1','2','0',' ',' ',' ',' ',' '},
	{'1','/','1','5','0',' ',' ',' ',' ',' '},
	{'1','/','2','5','0',' ',' ',' ',' ',' '},
	{'1','/','3','0','0',' ',' ',' ',' ',' '},
	{'1','/','5','0','0',' ',' ',' ',' ',' '},
	{'1','/','1','0','0','0',' ',' ',' ',' '},
 	{'1','/','2','5','0','0',' ',' ',' ',' '},
	{'1','/','5','0','0','0',' ',' ',' ',' '},
	// chn
	{278,279},					// auto
	{'1','/','1','5'},
	{'1','/','3','0'},
	{'1','/','6','0'},
	{'1','/','9','0'},
	{'1','/','1','2','0'},
	{'1','/','1','5','0'},
	{'1','/','2','5','0'},
	{'1','/','3','0','0'},
	{'1','/','5','0','0'},
	{'1','/','1','0','0','0'},
 	{'1','/','2','5','0','0'},
	{'1','/','5','0','0','0'},
#else
	// eng
	{'A','U','T','O',' ',' ',' ',' ',' ',' '},
	{'1','/','3','0',' ',' ',' ',' ',' ',' '},
	{'1','/','6','0',' ',' ',' ',' ',' ',' '},
	{'1','/','1','2','0',' ',' ',' ',' ',' '},
	{'1','/','1','8','0',' ',' ',' ',' ',' '},
	{'1','/','2','4','0',' ',' ',' ',' ',' '},
	{'1','/','3','0','0',' ',' ',' ',' ',' '},
	{'1','/','5','0','0',' ',' ',' ',' ',' '},
	{'1','/','1','0','0','0',' ',' ',' ',' '},
 	{'1','/','2','0','0','0',' ',' ',' ',' '},
	{'1','/','5','0','0','0',' ',' ',' ',' '},	
	{'1','/','1','0','0','0','0',' ',' ',' '},
	// chn
	{278,279},					// auto
	{'1','/','3','0'},
	{'1','/','6','0'},
	{'1','/','1','2','0'},
	{'1','/','1','8','0'},
	{'1','/','2','4','0'},
	{'1','/','3','0','0'},
	{'1','/','5','0','0'},
	{'1','/','1','0','0','0'},
	{'1','/','2','0','0','0'},
	{'1','/','5','0','0','0'},
	{'1','/','1','0','0','0','0'},
#endif
};

#if defined(__USE_X12X_UNION__)
static ROMDATA WORD ExpIrisItem[][MenuItemCol]		= {
	// eng
	{'F','1','6',' ',' ',' ',' ',' ',' ',' '},
	{'F','1','1',' ',' ',' ',' ',' ',' ',' '},
	{'F','8',' ',' ',' ',' ',' ',' ',' ',' '},
	{'F','5','.','6',' ',' ',' ',' ',' ',' '},
	{'F','4',' ',' ',' ',' ',' ',' ',' ',' '},
	{'F','2','.','8',' ',' ',' ',' ',' ',' '},
	{'F','2',' ',' ',' ',' ',' ',' ',' ',' '},
	{'F','1','.','8',' ',' ',' ',' ',' ',' '},
	// chn
	{'F','1','6'},
	{'F','1','1'},
	{'F','8'},
	{'F','5','.','6'},
	{'F','4'},
	{'F','2','.','8'},
	{'F','2'},
	{'F','1','.','8'},
};
#else
static ROMDATA WORD ExpIrisItem[][MenuItemCol]		= {
	// eng
	{'F','1','6',' ',' ',' ',' ',' ',' ',' '},
	{'F','1','1',' ',' ',' ',' ',' ',' ',' '},
	{'F','8',' ',' ',' ',' ',' ',' ',' ',' '},
	{'F','5','.','6',' ',' ',' ',' ',' ',' '},
	{'F','4',' ',' ',' ',' ',' ',' ',' ',' '},
	{'F','2','.','8',' ',' ',' ',' ',' ',' '},
	{'F','2',' ',' ',' ',' ',' ',' ',' ',' '},
	{'F','1','.','6',' ',' ',' ',' ',' ',' '},
	// chn
	{'F','1','6'},
	{'F','1','1'},
	{'F','8'},
	{'F','5','.','6'},
	{'F','4'},
	{'F','2','.','8'},
	{'F','2'},
	{'F','1','.','6'},
};
#endif

#if defined(__USE_CMOS_MN34220__) || defined(__USE_CMOS_MN34420__)
	static ROMDATA WORD ExpAGCItem[][MenuItemCol]={
		// eng
		{'A','U','T','O',' ',' ',' ',' ',' ',' '},
		{'0','d','B',' ',' ',' ',' ',' ',' ',' '},
		{'3','d','B',' ',' ',' ',' ',' ',' ',' '},
		{'6','d','B',' ',' ',' ',' ',' ',' ',' '},
		{'9','d','B',' ',' ',' ',' ',' ',' ',' '},
		{'1','2','d','B',' ',' ',' ',' ',' ',' '},
		{'1','5','d','B',' ',' ',' ',' ',' ',' '},
		{'1','8','d','B',' ',' ',' ',' ',' ',' '},
		{'2','1','d','B',' ',' ',' ',' ',' ',' '},
		{'2','4','d','B',' ',' ',' ',' ',' ',' '},
		{'2','7','d','B',' ',' ',' ',' ',' ',' '},
		{'d','3','0','d','B',' ',' ',' ',' ',' '},
		{'d','3','3','d','B',' ',' ',' ',' ',' '},
		{'d','3','6','d','B',' ',' ',' ',' ',' '},
		{'d','3','9','d','B',' ',' ',' ',' ',' '},
		{'d','4','2','d','B',' ',' ',' ',' ',' '},
		{'d','4','5','d','B',' ',' ',' ',' ',' '},
		{'d','4','8','d','B',' ',' ',' ',' ',' '},
		{'d','5','1','d','B',' ',' ',' ',' ',' '},
		{'d','5','4','d','B',' ',' ',' ',' ',' '},
		{'d','5','7','d','B',' ',' ',' ',' ',' '},
		{'d','6','0','d','B',' ',' ',' ',' ',' '},
		{'d','2','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','3','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','4','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','5','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','6','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','7','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','8','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','9','X',' ',' ',' ',' ',' ',' ',' '},
		// chn
		{278,279},				// auto
		{'0',310,322},			// 0dB
		{'3',310,322},			// 3dB
		{'6',310,322},			// 6dB
		{'9',310,322},			// 9dB
		{'1','2',310,322},		// 12dB
		{'1','5',310,322},		// 15dB
		{'1','8',310,322},		// 18dB
		{'2','1',310,322},		// 21dB
		{'2','4',310,322},		// 24dB
		{'2','7',310,322},		// 27dB
		{'d','3','0',310,322},	// d30dB
		{'d','3','3',310,322},	// d33dB
		{'d','3','6',310,322},	// d36dB
		{'d','3','9',310,322},	// d39dB
		{'d','4','2',310,322},	// d42dB
		{'d','4','5',310,322},	// d45dB
		{'d','4','8',310,322},	// d48dB
		{'d','5','1',310,322},	// d51dB
		{'d','5','4',310,322},	// d54dB
		{'d','5','7',310,322},	// d57dB
		{'d','6','0',310,322},	// d60dB
		{'d','2','X'},			// d2x
		{'d','3','X'},			// d3x
		{'d','4','X'},			// d4x
		{'d','5','X'},			// d5x
		{'d','6','X'},			// d6x
		{'d','7','X'},			// d7x
		{'d','8','X'},			// d8x
		{'d','9','X'},			// d9x
	};
#elif	defined(__USE_CMOS_IMX274__) || defined(__USE_CMOS_IMX326__)
	static ROMDATA WORD ExpAGCItem[][MenuItemCol]={
		// eng
		{'A','U','T','O',' ',' ',' ',' ',' ',' '},
		{'0','d','B',' ',' ',' ',' ',' ',' ',' '},
		{'2','d','B',' ',' ',' ',' ',' ',' ',' '},
		{'4','d','B',' ',' ',' ',' ',' ',' ',' '},
		{'8','d','B',' ',' ',' ',' ',' ',' ',' '},
		{'1','0','d','B',' ',' ',' ',' ',' ',' '},
		{'1','2','d','B',' ',' ',' ',' ',' ',' '},
		{'1','4','d','B',' ',' ',' ',' ',' ',' '},
		{'1','6','d','B',' ',' ',' ',' ',' ',' '},
		{'1','8','d','B',' ',' ',' ',' ',' ',' '},
		{'2','0','d','B',' ',' ',' ',' ',' ',' '},
		{'2','2','d','B',' ',' ',' ',' ',' ',' '},
		{'2','4','d','B',' ',' ',' ',' ',' ',' '},
		{'2','6','d','B',' ',' ',' ',' ',' ',' '},
		{'2','7','d','B',' ',' ',' ',' ',' ',' '},
		{'d','2','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','3','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','4','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','5','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','6','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','7','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','8','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','9','X',' ',' ',' ',' ',' ',' ',' '},
		// chn
		{278,279},				// auto
		{'0',310,322},			// 0dB
		{'2',310,322},			// 2dB
		{'4',310,322},			// 4dB
		{'8',310,322},			// 8dB
		{'1','0',310,322},		// 10dB
		{'1','2',310,322},		// 12dB
		{'1','4',310,322},		// 14dB
		{'1','6',310,322},		// 16dB
		{'1','8',310,322},		// 18dB
		{'2','0',310,322},		// 20dB
		{'2','2',310,322},		// 22dB
		{'2','4',310,322},		// 24dB
		{'2','6',310,322},		// 26dB
		{'2','7',310,322},		// 27dB
		{'d','2','X'},			// d2x
		{'d','3','X'},			// d3x
		{'d','4','X'},			// d4x
		{'d','5','X'},			// d5x
		{'d','6','X'},			// d6x
		{'d','7','X'},			// d7x
		{'d','8','X'},			// d8x
		{'d','9','X'},			// d9x
	};
#elif	defined(__USE_CMOS_IMX226__)
	static ROMDATA WORD ExpAGCItem[][MenuItemCol]={
		// eng
		{'A','U','T','O',' ',' ',' ',' ',' ',' '},
		{'0','d','B',' ',' ',' ',' ',' ',' ',' '},
		{'2','d','B',' ',' ',' ',' ',' ',' ',' '},
		{'4','d','B',' ',' ',' ',' ',' ',' ',' '},
		{'8','d','B',' ',' ',' ',' ',' ',' ',' '},
		{'1','0','d','B',' ',' ',' ',' ',' ',' '},
		{'1','2','d','B',' ',' ',' ',' ',' ',' '},
		{'1','4','d','B',' ',' ',' ',' ',' ',' '},
		{'1','6','d','B',' ',' ',' ',' ',' ',' '},
		{'1','8','d','B',' ',' ',' ',' ',' ',' '},
		{'2','0','d','B',' ',' ',' ',' ',' ',' '},
		{'2','2','d','B',' ',' ',' ',' ',' ',' '},
		{'2','4','d','B',' ',' ',' ',' ',' ',' '},
		{'2','6','d','B',' ',' ',' ',' ',' ',' '},
		{'2','7','d','B',' ',' ',' ',' ',' ',' '},
		{'d','3','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','5','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','7','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','9','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','1','1','X',' ',' ',' ',' ',' ',' '},
		{'d','1','3','X',' ',' ',' ',' ',' ',' '},
		{'d','1','5','X',' ',' ',' ',' ',' ',' '},
		{'d','1','7','X',' ',' ',' ',' ',' ',' '},
		{'d','1','9','X',' ',' ',' ',' ',' ',' '},
		{'d','2','1','X',' ',' ',' ',' ',' ',' '},
		{'d','2','3','X',' ',' ',' ',' ',' ',' '},
		{'d','2','5','X',' ',' ',' ',' ',' ',' '},
		{'d','2','7','X',' ',' ',' ',' ',' ',' '},
		{'d','2','9','X',' ',' ',' ',' ',' ',' '},
		{'d','3','1','X',' ',' ',' ',' ',' ',' '},
		{'d','3','3','X',' ',' ',' ',' ',' ',' '},
		// chn
		{278,279},				// auto
		{'0',310,322},			// 0dB
		{'2',310,322},			// 2dB
		{'4',310,322},			// 4dB
		{'8',310,322},			// 8dB
		{'1','0',310,322},		// 10dB
		{'1','2',310,322},		// 12dB
		{'1','4',310,322},		// 14dB
		{'1','6',310,322},		// 16dB
		{'1','8',310,322},		// 18dB
		{'2','0',310,322},		// 20dB
		{'2','2',310,322},		// 22dB
		{'2','4',310,322},		// 24dB
		{'2','6',310,322},		// 26dB
		{'2','7',310,322},		// 27dB
		{'d','3','X'},			  // d3x
		{'d','5','X'},			  // d5x
		{'d','7','X'},			  // d7x
		{'d','9','X'},			  // d9x
		{'d','1','1','X'},		// d11x
		{'d','1','3','X'},		// d13x
		{'d','1','5','X'},		// d15x
		{'d','1','7','X'},		// d17x
		{'d','1','9','X'},	  // d19x
		{'d','2','1','X'},	  // d21x
		{'d','2','3','X'},	  // d23x
		{'d','2','5','X'},	  // d25x
		{'d','2','7','X'},	  // d27x
		{'d','2','9','X'},	  // d29x
		{'d','3','1','X'},	  // d31x
		{'d','3','3','X'},	  // d33x
	};
#elif defined(__USE_CMOS_IMX124__)
	static ROMDATA WORD ExpAGCItem[][MenuItemCol]={
		// eng
		{'A','U','T','O',' ',' ',' ',' ',' ',' '},
		{'0','d','B',' ',' ',' ',' ',' ',' ',' '},
		{'3','d','B',' ',' ',' ',' ',' ',' ',' '},
		{'7','d','B',' ',' ',' ',' ',' ',' ',' '},
		{'1','0','d','B',' ',' ',' ',' ',' ',' '},
		{'1','4','d','B',' ',' ',' ',' ',' ',' '},
		{'1','7','d','B',' ',' ',' ',' ',' ',' '},
		{'2','1','d','B',' ',' ',' ',' ',' ',' '},
		{'2','4','d','B',' ',' ',' ',' ',' ',' '},
		{'d','2','8','d','B',' ',' ',' ',' ',' '},
		{'d','3','1','d','B',' ',' ',' ',' ',' '},
		{'d','3','5','d','B',' ',' ',' ',' ',' '},
		{'d','3','8','d','B',' ',' ',' ',' ',' '},
		{'d','4','2','d','B',' ',' ',' ',' ',' '},
		{'d','4','5','d','B',' ',' ',' ',' ',' '},
		{'d','5','1','d','B',' ',' ',' ',' ',' '},
		{'d','2','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','3','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','4','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','5','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','6','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','7','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','8','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','9','X',' ',' ',' ',' ',' ',' ',' '},
		// chn
		{278,279},				// auto
		{'0',310,322},			// 0dB
		{'3',310,322},			// 3dB
		{'7',310,322},			// 7dB
		{'1','0',310,322},		// 10dB
		{'1','4',310,322},		// 14dB
		{'1','7',310,322},		// 17dB
		{'2','1',310,322},		// 21dB
		{'2','4',310,322},		// 24dB
		{'d','2','8',310,322},	// d28dB
		{'d','3','1',310,322},	// d31dB
		{'d','3','5',310,322},	// d35dB
		{'d','3','8',310,322},	// d38dB
		{'d','4','2',310,322},	// d42dB
		{'d','4','5',310,322},	// d45dB
		{'d','5','1',310,322},	// d51dB
		{'d','2','X'},			// d2x
		{'d','3','X'},			// d3x
		{'d','4','X'},			// d4x
		{'d','5','X'},			// d5x
		{'d','6','X'},			// d6x
		{'d','7','X'},			// d7x
		{'d','8','X'},			// d8x
		{'d','9','X'},			// d9x
	};
#elif defined(__USE_CMOS_IMX290__) || defined(__USE_CMOS_IMX334__)
	static ROMDATA WORD ExpAGCItem[][MenuItemCol]={
		// eng
		{'A','U','T','O',' ',' ',' ',' ',' ',' '},
		{'0','d','B',' ',' ',' ',' ',' ',' ',' '},
		{'5','d','B',' ',' ',' ',' ',' ',' ',' '},
		{'1','0','d','B',' ',' ',' ',' ',' ',' '},
		{'1','5','d','B',' ',' ',' ',' ',' ',' '},
		{'2','0','d','B',' ',' ',' ',' ',' ',' '},
		{'2','5','d','B',' ',' ',' ',' ',' ',' '},
		{'3','0','d','B',' ',' ',' ',' ',' ',' '},
		{'d','3','5','d','B',' ',' ',' ',' ',' '},
		{'d','4','0','d','B',' ',' ',' ',' ',' '},
		{'d','4','5','d','B',' ',' ',' ',' ',' '},
		{'d','5','0','d','B',' ',' ',' ',' ',' '},
		{'d','5','5','d','B',' ',' ',' ',' ',' '},
		{'d','6','0','d','B',' ',' ',' ',' ',' '},
		{'d','6','5','d','B',' ',' ',' ',' ',' '},
		{'d','7','2','d','B',' ',' ',' ',' ',' '},
		{'d','2','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','3','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','4','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','5','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','6','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','7','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','8','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','9','X',' ',' ',' ',' ',' ',' ',' '},
		// chn
		{278,279},				// auto
		{'0',310,322},			// 0dB
		{'5',310,322},			// 5dB
		{'1','0',310,322},		// 10dB
		{'1','5',310,322},		// 15dB
		{'2','0',310,322},		// 20dB
		{'2','5',310,322},		// 25dB
		{'3','0',310,322},		// 30dB
		{'d','3','5',310,322},	// d35dB
		{'d','4','0',310,322},	// d40dB
		{'d','4','5',310,322},	// d45dB
		{'d','5','0',310,322},	// d50dB
		{'d','5','5',310,322},	// d55dB
		{'d','6','0',310,322},	// d60dB
		{'d','6','5',310,322},	// d65dB
		{'d','7','2',310,322},	// d72dB
		{'d','2','X'},			// d2x
		{'d','3','X'},			// d3x
		{'d','4','X'},			// d4x
		{'d','5','X'},			// d5x
		{'d','6','X'},			// d6x
		{'d','7','X'},			// d7x
		{'d','8','X'},			// d8x
		{'d','9','X'},			// d9x
	};
#elif defined(__USE_CMOS_IMX327__)
	static ROMDATA WORD ExpAGCItem[][MenuItemCol]={
		// eng
		{'A','U','T','O',' ',' ',' ',' ',' ',' '},
		{'0','d','B',' ',' ',' ',' ',' ',' ',' '},
		{'5','d','B',' ',' ',' ',' ',' ',' ',' '},
		{'1','0','d','B',' ',' ',' ',' ',' ',' '},
		{'1','5','d','B',' ',' ',' ',' ',' ',' '},
		{'2','0','d','B',' ',' ',' ',' ',' ',' '},
		{'2','5','d','B',' ',' ',' ',' ',' ',' '},
		{'3','0','d','B',' ',' ',' ',' ',' ',' '},
		{'d','3','5','d','B',' ',' ',' ',' ',' '},
		{'d','4','0','d','B',' ',' ',' ',' ',' '},
		{'d','4','5','d','B',' ',' ',' ',' ',' '},
		{'d','5','0','d','B',' ',' ',' ',' ',' '},
		{'d','5','5','d','B',' ',' ',' ',' ',' '},
		{'d','6','0','d','B',' ',' ',' ',' ',' '},
		{'d','6','5','d','B',' ',' ',' ',' ',' '},
		{'d','6','9','d','B',' ',' ',' ',' ',' '},
		{'d','2','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','3','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','4','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','5','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','6','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','7','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','8','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','9','X',' ',' ',' ',' ',' ',' ',' '},
		// chn
		{278,279},				// auto
		{'0',310,322},			// 0dB
		{'5',310,322},			// 5dB
		{'1','0',310,322},		// 10dB
		{'1','5',310,322},		// 15dB
		{'2','0',310,322},		// 20dB
		{'2','5',310,322},		// 25dB
		{'3','0',310,322},		// 30dB
		{'d','3','5',310,322},	// d35dB
		{'d','4','0',310,322},	// d40dB
		{'d','4','5',310,322},	// d45dB
		{'d','5','0',310,322},	// d50dB
		{'d','5','5',310,322},	// d55dB
		{'d','6','0',310,322},	// d60dB
		{'d','6','5',310,322},	// d65dB
		{'d','6','9',310,322},	// d72dB
		{'d','2','X'},			// d2x
		{'d','3','X'},			// d3x
		{'d','4','X'},			// d4x
		{'d','5','X'},			// d5x
		{'d','6','X'},			// d6x
		{'d','7','X'},			// d7x
		{'d','8','X'},			// d8x
		{'d','9','X'},			// d9x
	};
#elif defined(__USE_CMOS_IMX385__)
	static ROMDATA WORD ExpAGCItem[][MenuItemCol]={
		// eng
		{'A','U','T','O',' ',' ',' ',' ',' ',' '},
		{'0','d','B',' ',' ',' ',' ',' ',' ',' '},
		{'5','d','B',' ',' ',' ',' ',' ',' ',' '},
		{'1','0','d','B',' ',' ',' ',' ',' ',' '},
		{'1','5','d','B',' ',' ',' ',' ',' ',' '},
		{'2','0','d','B',' ',' ',' ',' ',' ',' '},
		{'2','5','d','B',' ',' ',' ',' ',' ',' '},
		{'3','0','d','B',' ',' ',' ',' ',' ',' '},
		{'d','3','5','d','B',' ',' ',' ',' ',' '},
		{'d','4','0','d','B',' ',' ',' ',' ',' '},
		{'d','4','5','d','B',' ',' ',' ',' ',' '},
		{'d','5','0','d','B',' ',' ',' ',' ',' '},
		{'d','5','5','d','B',' ',' ',' ',' ',' '},
		{'d','6','0','d','B',' ',' ',' ',' ',' '},
		{'d','6','5','d','B',' ',' ',' ',' ',' '},
		{'d','7','2','d','B',' ',' ',' ',' ',' '},
		{'d','2','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','3','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','4','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','5','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','6','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','7','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','8','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','9','X',' ',' ',' ',' ',' ',' ',' '},
		// chn
		{278,279},				// auto
		{'0',310,322},			// 0dB
		{'5',310,322},			// 5dB
		{'1','0',310,322},		// 10dB
		{'1','5',310,322},		// 15dB
		{'2','0',310,322},		// 20dB
		{'2','5',310,322},		// 25dB
		{'3','0',310,322},		// 30dB
		{'d','3','5',310,322},	// d35dB
		{'d','4','0',310,322},	// d40dB
		{'d','4','5',310,322},	// d45dB
		{'d','5','0',310,322},	// d50dB
		{'d','5','5',310,322},	// d55dB
		{'d','6','0',310,322},	// d60dB
		{'d','6','5',310,322},	// d65dB
		{'d','7','2',310,322},	// d72dB
		{'d','2','X'},			// d2x
		{'d','3','X'},			// d3x
		{'d','4','X'},			// d4x
		{'d','5','X'},			// d5x
		{'d','6','X'},			// d6x
		{'d','7','X'},			// d7x
		{'d','8','X'},			// d8x
		{'d','9','X'},			// d9x
	};
#elif defined(__USE_CMOS_IMXx36__)
	static ROMDATA WORD ExpAGCItem[][MenuItemCol]={
		// eng
		{'A','U','T','O',' ',' ',' ',' ',' ',' '},
		{'0','d','B',' ',' ',' ',' ',' ',' ',' '},
		{'3','d','B',' ',' ',' ',' ',' ',' ',' '},
		{'6','d','B',' ',' ',' ',' ',' ',' ',' '},
		{'9','d','B',' ',' ',' ',' ',' ',' ',' '},
		{'1','2','d','B',' ',' ',' ',' ',' ',' '},
		{'1','5','d','B',' ',' ',' ',' ',' ',' '},
		{'1','8','d','B',' ',' ',' ',' ',' ',' '},
		{'2','1','d','B',' ',' ',' ',' ',' ',' '},
		{'2','4','d','B',' ',' ',' ',' ',' ',' '},
		{'d','2','7','d','B',' ',' ',' ',' ',' '},
		{'d','3','0','d','B',' ',' ',' ',' ',' '},
		{'d','3','3','d','B',' ',' ',' ',' ',' '},
		{'d','3','6','d','B',' ',' ',' ',' ',' '},
		{'d','3','9','d','B',' ',' ',' ',' ',' '},
		{'d','4','2','d','B',' ',' ',' ',' ',' '},
		// chn
		{278,279},				// auto
		{'0',310,322},			// 0dB
		{'3',310,322},			// 3dB
		{'6',310,322},			// 6dB
		{'9',310,322},			// 9dB
		{'1','2',310,322},		// 12dB
		{'1','5',310,322},		// 15dB
		{'1','8',310,322},		// 18dB
		{'2','1',310,322},		// 21dB
		{'2','4',310,322},		// 24dB
		{'d','2','7',310,322},	// d27dB
		{'d','3','0',310,322},	// d30dB
		{'d','3','3',310,322},	// d33dB
		{'d','3','6',310,322},	// d36dB
		{'d','3','9',310,322},	// d39dB
		{'d','4','2',310,322},	// d42dB
	};
#elif defined(__USE_CMOS_IMX185__)
	static ROMDATA WORD ExpAGCItem[][MenuItemCol]={
		// eng
		{'A','U','T','O',' ',' ',' ',' ',' ',' '},
		{'0','d','B',' ',' ',' ',' ',' ',' ',' '},
		{'3','d','B',' ',' ',' ',' ',' ',' ',' '},
		{'6','d','B',' ',' ',' ',' ',' ',' ',' '},
		{'9','d','B',' ',' ',' ',' ',' ',' ',' '},
		{'1','2','d','B',' ',' ',' ',' ',' ',' '},
		{'1','5','d','B',' ',' ',' ',' ',' ',' '},
		{'1','8','d','B',' ',' ',' ',' ',' ',' '},
		{'2','1','d','B',' ',' ',' ',' ',' ',' '},
		{'2','4','d','B',' ',' ',' ',' ',' ',' '},
		{'d','2','7','d','B',' ',' ',' ',' ',' '},
		{'d','3','0','d','B',' ',' ',' ',' ',' '},
		{'d','3','3','d','B',' ',' ',' ',' ',' '},
		{'d','3','6','d','B',' ',' ',' ',' ',' '},
		{'d','3','9','d','B',' ',' ',' ',' ',' '},
		{'d','4','2','d','B',' ',' ',' ',' ',' '},
		{'d','4','5','d','B',' ',' ',' ',' ',' '},
		{'d','4','8','d','B',' ',' ',' ',' ',' '},
		{'d','2','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','3','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','4','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','5','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','6','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','7','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','8','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','9','X',' ',' ',' ',' ',' ',' ',' '},
		// chn
		{278,279},				// auto
		{'0',310,322},			// 0dB
		{'3',310,322},			// 3dB
		{'6',310,322},			// 6dB
		{'9',310,322},			// 9dB
		{'1','2',310,322},		// 12dB
		{'1','5',310,322},		// 15dB
		{'1','8',310,322},		// 18dB
		{'2','1',310,322},		// 21dB
		{'2','4',310,322},		// 24dB
		{'d','2','7',310,322},	// d27dB
		{'d','3','0',310,322},	// d30dB
		{'d','3','3',310,322},	// d33dB
		{'d','3','6',310,322},	// d36dB
		{'d','3','9',310,322},	// d39dB
		{'d','4','2',310,322},	// d42dB
		{'d','4','5',310,322},	// d45dB
		{'d','4','8',310,322},	// d48dB
		{'d','2','X'},			// d2x
		{'d','3','X'},			// d3x
		{'d','4','X'},			// d4x
		{'d','5','X'},			// d5x
		{'d','6','X'},			// d6x
		{'d','7','X'},			// d7x
		{'d','8','X'},			// d8x
		{'d','9','X'},			// d9x
	};
#elif defined(__USE_CMOS_IMX253__) 
	static ROMDATA WORD ExpAGCItem[][MenuItemCol]={
		// eng
		{'A','U','T','O',' ',' ',' ',' ',' ',' '},
		{'0','d','B',' ',' ',' ',' ',' ',' ',' '},
		{'3','d','B',' ',' ',' ',' ',' ',' ',' '},
		{'6','d','B',' ',' ',' ',' ',' ',' ',' '},
		{'9','d','B',' ',' ',' ',' ',' ',' ',' '},
		{'1','2','d','B',' ',' ',' ',' ',' ',' '},
		{'1','5','d','B',' ',' ',' ',' ',' ',' '},
		{'1','8','d','B',' ',' ',' ',' ',' ',' '},
		{'2','1','d','B',' ',' ',' ',' ',' ',' '},
		{'2','4','d','B',' ',' ',' ',' ',' ',' '},
		{'d','2','7','d','B',' ',' ',' ',' ',' '},
		{'d','3','0','d','B',' ',' ',' ',' ',' '},
		{'d','3','3','d','B',' ',' ',' ',' ',' '},
		{'d','3','6','d','B',' ',' ',' ',' ',' '},
		{'d','3','9','d','B',' ',' ',' ',' ',' '},
		{'d','4','2','d','B',' ',' ',' ',' ',' '},
		{'d','4','5','d','B',' ',' ',' ',' ',' '},
		{'d','4','8','d','B',' ',' ',' ',' ',' '},
		{'d','2','X'},			// d2x
		{'d','3','X'},			// d3x
		{'d','4','X'},			// d4x
		{'d','5','X'},			// d5x
		{'d','6','X'},			// d6x
		{'d','7','X'},			// d7x
		{'d','8','X'},			// d8x
		{'d','9','X'},			// d9x
		// chn
		{278,279},				// auto
		{'0',310,322},			// 0dB
		{'3',310,322},			// 3dB
		{'6',310,322},			// 6dB
		{'9',310,322},			// 9dB
		{'1','2',310,322},		// 12dB
		{'1','5',310,322},		// 15dB
		{'1','8',310,322},		// 18dB
		{'2','1',310,322},		// 21dB
		{'2','4',310,322},		// 24dB
		{'d','2','7',310,322},	// d27dB
		{'d','3','0',310,322},	// d30dB
		{'d','3','3',310,322},	// d33dB
		{'d','3','6',310,322},	// d36dB
		{'d','3','9',310,322},	// d39dB
		{'d','4','2',310,322},	// d42dB
		{'d','4','5',310,322},	// d45dB
		{'d','4','8',310,322},	// d48dB
		{'d','2','X'},			// d2x
		{'d','3','X'},			// d3x
		{'d','4','X'},			// d4x
		{'d','5','X'},			// d5x
		{'d','6','X'},			// d6x
		{'d','7','X'},			// d7x
		{'d','8','X'},			// d8x
		{'d','9','X'},			// d9x
	};
#elif defined(__USE_CMOS_IMX273__)
	static ROMDATA WORD ExpAGCItem[][MenuItemCol]={
		// eng
		{'A','U','T','O',' ',' ',' ',' ',' ',' '},
		{'0','d','B',' ',' ',' ',' ',' ',' ',' '},
		{'3','d','B',' ',' ',' ',' ',' ',' ',' '},
		{'6','d','B',' ',' ',' ',' ',' ',' ',' '},
		{'9','d','B',' ',' ',' ',' ',' ',' ',' '},
		{'1','2','d','B',' ',' ',' ',' ',' ',' '},
		{'1','5','d','B',' ',' ',' ',' ',' ',' '},
		{'1','8','d','B',' ',' ',' ',' ',' ',' '},
		{'2','1','d','B',' ',' ',' ',' ',' ',' '},
		{'2','4','d','B',' ',' ',' ',' ',' ',' '},
		{'d','2','7','d','B',' ',' ',' ',' ',' '},
		{'d','3','0','d','B',' ',' ',' ',' ',' '},
		{'d','3','3','d','B',' ',' ',' ',' ',' '},
		{'d','3','6','d','B',' ',' ',' ',' ',' '},
		{'d','3','9','d','B',' ',' ',' ',' ',' '},
		{'d','4','2','d','B',' ',' ',' ',' ',' '},
		{'d','4','5','d','B',' ',' ',' ',' ',' '},
		{'d','4','8','d','B',' ',' ',' ',' ',' '},
		{'d','2','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','3','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','4','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','5','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','6','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','7','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','8','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','9','X',' ',' ',' ',' ',' ',' ',' '},
		// chn
		{278,279},				// auto
		{'0',310,322},			// 0dB
		{'3',310,322},			// 3dB
		{'6',310,322},			// 6dB
		{'9',310,322},			// 9dB
		{'1','2',310,322},		// 12dB
		{'1','5',310,322},		// 15dB
		{'1','8',310,322},		// 18dB
		{'2','1',310,322},		// 21dB
		{'2','4',310,322},		// 24dB
		{'d','2','7',310,322},	// d27dB
		{'d','3','0',310,322},	// d30dB
		{'d','3','3',310,322},	// d33dB
		{'d','3','6',310,322},	// d36dB
		{'d','3','9',310,322},	// d39dB
		{'d','4','2',310,322},	// d42dB
		{'d','4','5',310,322},	// d45dB
		{'d','4','8',310,322},	// d48dB
		{'d','2','X'},			// d2x
		{'d','3','X'},			// d3x
		{'d','4','X'},			// d4x
		{'d','5','X'},			// d5x
		{'d','6','X'},			// d6x
		{'d','7','X'},			// d7x
		{'d','8','X'},			// d8x
		{'d','9','X'},			// d9x
	};
#elif defined(__USE_CMOS_IMX323__)
	static ROMDATA WORD ExpAGCItem[][MenuItemCol]={
		// eng
		{'A','U','T','O',' ',' ',' ',' ',' ',' '},
		{'0','d','B',' ',' ',' ',' ',' ',' ',' '},
		{'3','d','B',' ',' ',' ',' ',' ',' ',' '},
		{'6','d','B',' ',' ',' ',' ',' ',' ',' '},
		{'9','d','B',' ',' ',' ',' ',' ',' ',' '},
		{'1','2','d','B',' ',' ',' ',' ',' ',' '},
		{'1','5','d','B',' ',' ',' ',' ',' ',' '},
		{'1','8','d','B',' ',' ',' ',' ',' ',' '},
		{'2','1','d','B',' ',' ',' ',' ',' ',' '},
		{'2','4','d','B',' ',' ',' ',' ',' ',' '},
		{'d','2','7','d','B',' ',' ',' ',' ',' '},
		{'d','3','0','d','B',' ',' ',' ',' ',' '},
		{'d','3','3','d','B',' ',' ',' ',' ',' '},
		{'d','3','6','d','B',' ',' ',' ',' ',' '},
		{'d','3','9','d','B',' ',' ',' ',' ',' '},
		{'d','4','2','d','B',' ',' ',' ',' ',' '},
		{'d','4','5','d','B',' ',' ',' ',' ',' '},
		{'d','2','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','3','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','4','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','5','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','6','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','7','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','8','X',' ',' ',' ',' ',' ',' ',' '},
		{'d','9','X',' ',' ',' ',' ',' ',' ',' '},
		// chn
		{278,279},				// auto
		{'0',310,322},			// 0dB
		{'3',310,322},			// 3dB
		{'6',310,322},			// 6dB
		{'9',310,322},			// 9dB
		{'1','2',310,322},		// 12dB
		{'1','5',310,322},		// 15dB
		{'1','8',310,322},		// 18dB
		{'2','1',310,322},		// 21dB
		{'2','4',310,322},		// 24dB
		{'d','2','7',310,322},	// d27dB
		{'d','3','0',310,322},	// d30dB
		{'d','3','3',310,322},	// d33dB
		{'d','3','6',310,322},	// d36dB
		{'d','3','9',310,322},	// d39dB
		{'d','4','2',310,322},	// d42dB
		{'d','4','5',310,322},	// d45dB
		{'d','2','X'},			// d2x
		{'d','3','X'},			// d3x
		{'d','4','X'},			// d4x
		{'d','5','X'},			// d5x
		{'d','6','X'},			// d6x
		{'d','7','X'},			// d7x
		{'d','8','X'},			// d8x
		{'d','9','X'},			// d9x
	};
#elif defined(__USE_CMOS_IMX174__) || defined(__USE_CMOS_IMX249__) || defined(__USE_CMOS_IMX265__) || defined(__USE_CMOS_IMX252__)
static ROMDATA WORD ExpAGCItem[][MenuItemCol]		= {	
	// eng
	{'A','U','T','O',' ',' ',' ',' ',' ',' '},
	{'0','d','B',' ',' ',' ',' ',' ',' ',' '},
	{'2','d','B',' ',' ',' ',' ',' ',' ',' '},
	{'4','d','B',' ',' ',' ',' ',' ',' ',' '},
	{'6','d','B',' ',' ',' ',' ',' ',' ',' '},
	{'8','d','B',' ',' ',' ',' ',' ',' ',' '},
	{'1','0','d','B',' ',' ',' ',' ',' ',' '},
	{'1','2','d','B',' ',' ',' ',' ',' ',' '},
	{'1','4','d','B',' ',' ',' ',' ',' ',' '},
	{'1','6','d','B',' ',' ',' ',' ',' ',' '},
	{'1','8','d','B',' ',' ',' ',' ',' ',' '},
	{'2','0','d','B',' ',' ',' ',' ',' ',' '},
	{'2','2','d','B',' ',' ',' ',' ',' ',' '},
	{'2','4','d','B',' ',' ',' ',' ',' ',' '},
	{'d','2','6','d','B',' ',' ',' ',' ',' '},
	{'d','2','8','d','B',' ',' ',' ',' ',' '},
	{'d','3','0','d','B',' ',' ',' ',' ',' '},
	{'d','3','3','d','B',' ',' ',' ',' ',' '},
	{'d','3','6','d','B',' ',' ',' ',' ',' '},
	{'d','3','9','d','B',' ',' ',' ',' ',' '},
	{'d','4','2','d','B',' ',' ',' ',' ',' '},
	{'d','4','5','d','B',' ',' ',' ',' ',' '},
	{'d','4','8','d','B',' ',' ',' ',' ',' '},
	// chn
	{278,279},				// auto
	{'0',310,322},			// 0dB
	{'2',310,322},			// 2dB
	{'4',310,322},			// 4dB
	{'6',310,322},			// 6dB
	{'8',310,322},			// 8dB
	{'1','0',310,322},		// 10dB
	{'1','2',310,322},		// 12dB
	{'1','4',310,322},		// 14dB
	{'1','6',310,322},		// 16dB
	{'1','8',310,322},		// 18dB
	{'2','0',310,322},		// 20dB
	{'2','2',310,322},		// 22dB
	{'2','4',310,322},		// 24dB
	{'d','2','6',310,322},	// d26dB
	{'d','2','8',310,322},	// d28dB
	{'d','3','0',310,322},	// d30dB
	{'d','3','3',310,322},	// d33dB
	{'d','3','6',310,322},	// d36dB
	{'d','3','9',310,322},	// d39dB
	{'d','4','2',310,322},	// d42dB
	{'d','4','5',310,322},	// d45dB
	{'d','4','8',310,322},	// d48dB
};	
#else
static ROMDATA WORD ExpAGCItem[][MenuItemCol]		= {
	// eng
	{'A','U','T','O',' ',' ',' ',' ',' ',' '},
	{'0','d','B',' ',' ',' ',' ',' ',' ',' '},
	{'2','d','B',' ',' ',' ',' ',' ',' ',' '},
	{'4','d','B',' ',' ',' ',' ',' ',' ',' '},
	{'6','d','B',' ',' ',' ',' ',' ',' ',' '},
	{'8','d','B',' ',' ',' ',' ',' ',' ',' '},
	{'1','0','d','B',' ',' ',' ',' ',' ',' '},
	{'1','2','d','B',' ',' ',' ',' ',' ',' '},
	{'1','4','d','B',' ',' ',' ',' ',' ',' '},
	{'1','6','d','B',' ',' ',' ',' ',' ',' '},
	{'1','8','d','B',' ',' ',' ',' ',' ',' '},
	{'2','0','d','B',' ',' ',' ',' ',' ',' '},
	{'2','2','d','B',' ',' ',' ',' ',' ',' '},
	{'2','4','d','B',' ',' ',' ',' ',' ',' '},
	{'2','6','d','B',' ',' ',' ',' ',' ',' '},
	{'2','8','d','B',' ',' ',' ',' ',' ',' '},
	// chn
	{278,279},				// auto
	{'0',310,322},			// 0dB
	{'2',310,322},			// 2dB
	{'4',310,322},			// 4dB
	{'6',310,322},			// 6dB
	{'8',310,322},			// 8dB
	{'1','0',310,322},		// 10dB
	{'1','2',310,322},		// 12dB
	{'1','4',310,322},		// 14dB
	{'1','6',310,322},		// 16dB
	{'1','8',310,322},		// 18dB
	{'2','0',310,322},		// 20dB
	{'2','2',310,322},		// 22dB
	{'2','4',310,322},		// 24dB
	{'2','6',310,322},		// 26dB
	{'2','8',310,322},		// 28dB
};
#endif

static ROMDATA WORD ExpAGCMaxItem[][MenuItemCol]		= {
	// eng
	{'O','F','F',' ',' ',' ',' ',' ',' ',' '},
	{'L','O','W',' ',' ',' ',' ',' ',' ',' '},
	{'M','I','D','D','L','E',' ',' ',' ',' '},
	{'H','I','G','H',' ',' ',' ',' ',' ',' '},
	{'D','M','I','N',' ',' ',' ',' ',' ',' '},
	{'D','M','I','D',' ',' ',' ',' ',' ',' '},
	{'D','M','A','X',' ',' ',' ',' ',' ',' '},
	// chn
	{284},	// off
	{314},	// low
	{315},	// mid
	{316},	// high
	{'D','M','I','N'},	// d-min
	{'D','M','1','D'},	// d-mid
	{'D','M','A','X'},	// d-max
};

#if defined (__USE_CMOS_IMX226__) || defined(__USE_CMOS_IMX290__) || defined(__USE_CMOS_IMX327__) \
	|| defined(__USE_CMOS_IMX385__) || defined(__USE_CMOS_IMX253__)
static ROMDATA WORD SensUpItem[][MenuItemCol]		= {
	// eng
	{'O','F','F',' ',' ',' ',' ',' ',' ',' '},
	{'x','2',' ',' ',' ',' ',' ',' ',' ',' '},
	{'x','3',' ',' ',' ',' ',' ',' ',' ',' '},
	{'x','4',' ',' ',' ',' ',' ',' ',' ',' '},
	{'x','5',' ',' ',' ',' ',' ',' ',' ',' '},
	{'x','6',' ',' ',' ',' ',' ',' ',' ',' '},
	{'x','7',' ',' ',' ',' ',' ',' ',' ',' '},
	{'x','8',' ',' ',' ',' ',' ',' ',' ',' '},
	{'x','9',' ',' ',' ',' ',' ',' ',' ',' '},
	{'x','1','0',' ',' ',' ',' ',' ',' ',' '},
	{'x','1','2',' ',' ',' ',' ',' ',' ',' '},
	{'x','1','5',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{284},			// off
	{'2',444},		// x2
	{'3',444},		// x3
	{'4',444},		// x4
	{'5',444},		// x5
	{'6',444},		// x6
	{'7',444},		// x7
	{'8',444},		// x8
	{'9',444},		// x9
	{'1','0',444},	// x10
	{'1','2',444},	// x12
	{'1','5',444},	// x15
};
#elif defined(__USE_CMOS_IMX274__) || defined(__USE_CMOS_IMX273__)
static ROMDATA WORD SensUpItem[][MenuItemCol]		= {
	// eng
	{'O','F','F',' ',' ',' ',' ',' ',' ',' '},
	{'x','2',' ',' ',' ',' ',' ',' ',' ',' '},
	{'x','3',' ',' ',' ',' ',' ',' ',' ',' '},
	{'x','4',' ',' ',' ',' ',' ',' ',' ',' '},
	{'x','5',' ',' ',' ',' ',' ',' ',' ',' '},
	{'x','6',' ',' ',' ',' ',' ',' ',' ',' '},
	{'x','7',' ',' ',' ',' ',' ',' ',' ',' '},
	{'x','8',' ',' ',' ',' ',' ',' ',' ',' '},
	{'x','9',' ',' ',' ',' ',' ',' ',' ',' '},
	{'x','1','0',' ',' ',' ',' ',' ',' ',' '},
	{'x','1','2',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{284},			// off
	{'2',444},		// x2
	{'3',444},		// x3
	{'4',444},		// x4
	{'5',444},		// x5
	{'6',444},		// x6
	{'7',444},		// x7
	{'8',444},		// x8
	{'9',444},		// x9
	{'1','0',444},	// x10
	{'1','2',444},	// x12
};
#else
static ROMDATA WORD SensUpItem[][MenuItemCol]		= {
	// eng
	{'O','F','F',' ',' ',' ',' ',' ',' ',' '},
	{'x','2',' ',' ',' ',' ',' ',' ',' ',' '},
	{'x','3',' ',' ',' ',' ',' ',' ',' ',' '},
	{'x','4',' ',' ',' ',' ',' ',' ',' ',' '},
	{'x','5',' ',' ',' ',' ',' ',' ',' ',' '},
	{'x','6',' ',' ',' ',' ',' ',' ',' ',' '},
	{'x','7',' ',' ',' ',' ',' ',' ',' ',' '},
	{'x','8',' ',' ',' ',' ',' ',' ',' ',' '},
	{'x','9',' ',' ',' ',' ',' ',' ',' ',' '},
	{'x','1','0',' ',' ',' ',' ',' ',' ',' '},
	{'x','2','0',' ',' ',' ',' ',' ',' ',' '},
	{'x','3','0',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{284},			// off
	{'2',444},		// x2
	{'3',444},		// x3
	{'4',444},		// x4
	{'5',444},		// x5
	{'6',444},		// x6
	{'7',444},		// x7
	{'8',444},		// x8
	{'9',444},		// x9
	{'1','0',444},	// x10
	{'2','0',444},	// x20
	{'3','0',444},	// x30
};
#endif

static ROMDATA WORD ExpLensModeItem[][MenuItemCol]		= {
	// eng
	{'I','N','D','O','O','R',' ',' ',' ',' '},
	{'O','U','T','D','O','O','R',' ',' ',' '},
	{'M','A','N','U','A','L',' ',' ',' ',' '},
	// chn
	{354,355},		// indoor
	{354,294},		// outdoor
	{286,279},		// manual
};

static ROMDATA WORD ExpFlkModeItem[][MenuItemCol]		= {
	// eng
	{'A','U','T','O',' ',' ',' ',' ',' ',' '},
	{'O','N',' ',' ',' ',' ',' ',' ',' ',' '},
	{'O','F','F',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{278,279},		// auto
	{285},			// on
	{284},			// off
};

#if defined(__USE_DCIRIS_HALL__) || defined(__USE_P_IRIS_ONLY__)
#define 	MENU_ATTB_IRIS			MENU_ITEM
#else
#define		MENU_ATTB_IRIS			(MENU_ITEM | MENU_SKIP)
#endif

// exposure menu info
static ROMDATA OSD_MENU_INFO ExpMenuInfo[] = {
	// menu,				attb,		Item,					init,	max,							title
	{(PWORD)AEModeMenu,		MENU_ITEM,	(PWORD)AEModeItem,		0,		GetArrayMax(AEModeItem)/2,		(PWORD)ExpMenuTitle	},
#if defined(__USE_25Hz_SENSOR__)
	{(PWORD)ExpShutMenu,	MENU_ITEM,	(PWORD)ExpShutItemPal,	0,		GetArrayMax(ExpShutItemPal)/2,	(PWORD)ExpMenuTitle	},
#else
	{(PWORD)ExpShutMenu,	MENU_ITEM,	(PWORD)ExpShutItemNtsc,	0,		GetArrayMax(ExpShutItemNtsc)/2,	(PWORD)ExpMenuTitle	},
#endif
	{(PWORD)ExpIrisMenu,	MENU_ATTB_IRIS,	(PWORD)ExpIrisItem,	7,		GetArrayMax(ExpIrisItem)/2,		(PWORD)ExpMenuTitle	},
	{(PWORD)ExpAGCMenu,		MENU_ITEM,	(PWORD)ExpAGCItem,		0,		GetArrayMax(ExpAGCItem)/2,		(PWORD)ExpMenuTitle	},
	{(PWORD)ExpAGCMaxMenu,	MENU_ITEM,	(PWORD)ExpAGCMaxItem,	3,		GetArrayMax(ExpAGCMaxItem)/2,	(PWORD)ExpMenuTitle	},
	{(PWORD)SensUpMenu,		MENU_ITEM,	(PWORD)SensUpItem,		0,		GetArrayMax(SensUpItem)/2,		(PWORD)ExpMenuTitle	},
	{(PWORD)ExpBrightMenu,	MENU_VALUE,	NULL,					6,		10,								(PWORD)ExpMenuTitle	},
	{(PWORD)ExpFlkMode,		MENU_ITEM,	(PWORD)ExpFlkModeItem,	0,		GetArrayMax(ExpFlkModeItem)/2,	(PWORD)ExpMenuTitle	},
#if defined(__USE_PWMIRIS_ONLY__)
	{(PWORD)ExpLensMode,	MENU_ITEM,	(PWORD)ExpLensModeItem,	0,		GetArrayMax(ExpLensModeItem)/2,	(PWORD)ExpMenuTitle},
#endif
	{(PWORD)RetMenu,		MENU_EXIT,	(PWORD)BlankItem,		0,		GetArrayMax(BlankItem)/2,		(PWORD)ExpMenuTitle	},
};


//--------------------------------------------------------------------------------------------------------------------------
// 3-1.White Balance
//--------------------------------------------------------------------------------------------------------------------------

// WB menu title
static ROMDATA WORD WBMenuTitle[][MenuTitleCol]	= {
	// eng
	{'W','H','I','T','E',' ','B','A','L','A','N','C','E',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{264,265,266},	// white balance
	{0},
};

// WB menu
static ROMDATA WORD WBModeMenu[][MenuNameCol]		= {{'M','O','D','E',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},{378,369}};
static ROMDATA WORD WBPushMenu[][MenuNameCol]		= {{'P','U','S','H',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},{289,291,278,279}};
static ROMDATA WORD WBBlueMenu[][MenuNameCol]		= {{'B','L','U','E',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},{353,297}};
static ROMDATA WORD WBRedMenu[][MenuNameCol]		= {{'R','E','D',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},{352,297}};
static ROMDATA WORD WBSpeedMenu[][MenuNameCol]		= {{'S','P','E','E','D',' ',' ',' ',' ',' ',' ',' ',' ',' '},{'S','P','E','E','D'}};
static ROMDATA WORD WBOffBMenu[][MenuNameCol]		= {{'O','F','F','S','E','T','-','B',' ',' ',' ',' ',' ',' '},{'O','F','F','S','E','T','-','B'}};
static ROMDATA WORD WBOffRMenu[][MenuNameCol]		= {{'O','F','F','S','E','T','-','R',' ',' ',' ',' ',' ',' '},{'O','F','F','S','E','T','-','R'}};

// WB menu item
static ROMDATA WORD WBModeItem[][MenuItemCol] = {
	// eng
	{'A','T','W',' ',' ',' ',' ',' ',' ',' '},
	{'O','N','E',' ','P','U','S','H',' ',' '},
	{'I','N','D','O','O','R',' ',' ',' ',' '},
	{'O','U','T','D','O','O','R',' ',' ',' '},
	{'M','A','N','U','A','L',' ',' ',' ',' '},
	// chn
	{278,279,422,423,264,265,266},	// atw
	{289,291,278,279},				// one push
	{354,355},						// indoor
	{354,294},						// outdoor
	{286,279},						// manual
};

// WB menu info
static ROMDATA OSD_MENU_INFO WBMenuInfo[] = {
	// menu,			attb,		Item,				init,	max,						title
	{(PWORD)WBModeMenu,	MENU_ITEM,	(PWORD)WBModeItem,	0,		GetArrayMax(WBModeItem)/2,	(PWORD)WBMenuTitle	},
	{(PWORD)WBPushMenu,	MENU_FUNC,	(PWORD)WaitOkItem,	0,		GetArrayMax(WaitOkItem)/2,	(PWORD)WBMenuTitle	},
	{(PWORD)WBBlueMenu,	MENU_VALUE,	NULL,				50,		100,						(PWORD)WBMenuTitle	},
	{(PWORD)WBRedMenu,	MENU_VALUE,	NULL,				50,		100,						(PWORD)WBMenuTitle	},
	{(PWORD)WBSpeedMenu,	MENU_VALUE,	NULL,				0,		7,						(PWORD)WBMenuTitle	},
	{(PWORD)WBOffBMenu,	MENU_VALUE,	NULL,				50,		100,						(PWORD)WBMenuTitle	},
	{(PWORD)WBOffRMenu,	MENU_VALUE,	NULL,				50,		100,						(PWORD)WBMenuTitle	},
	{(PWORD)RetMenu,	MENU_EXIT,	(PWORD)BlankItem,	0,		GetArrayMax(BlankItem)/2,	(PWORD)WBMenuTitle	},
};

//--------------------------------------------------------------------------------------------------------------------------
// 4-1. Day & Night
//--------------------------------------------------------------------------------------------------------------------------

// daynight menu title
static ROMDATA WORD DYNTMenuTitle[][MenuTitleCol]	= {
	// eng
	{'D','A','Y',' ','&',' ','N','I','G','H','T',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{274,275},	// day & night
	{0},
};

// daynight menu
static ROMDATA WORD DYNTModeMenu[][MenuNameCol]	= {{'M','O','D','E',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},{378,369}};
static ROMDATA WORD DYNTDelayMenu[][MenuNameCol]	= {{'D','E','L','A','Y','[','S','E','C',']',' ',' ',' ',' '},{299,300,301,302,91,478,93}};
static ROMDATA WORD AGCD2NMenu[][MenuNameCol]		= {{'D','-','>','N',' ','L','E','V','E','L',' ',' ',' ',' '},{274,62,275,0,341,340,287,288}};
static ROMDATA WORD AGCN2DMenu[][MenuNameCol]		= {{'N','-','>','D',' ','L','E','V','E','L',' ',' ',' ',' '},{275,62,274,0,341,340,287,288}};
static ROMDATA WORD NColorMenu[][MenuNameCol]		= {{'N','I','G','H','T',' ','C','O','L','O','R',' ',' ',' '},{275,296,297}};
static ROMDATA WORD ColorBurstMenu[][MenuNameCol]	= {{'C','O','L','O','R',' ','B','U','R','S','T',' ',' ',' '},{297,408,409}};

// daynight menu item
static ROMDATA WORD DYNTModeItem[][MenuItemCol] = {
	// eng
	{'A','U','T','O',' ',' ',' ',' ',' ',' '},
	{'D','A','Y','(','C','O','L','O','R',')'},
	{'N','I','G','H','T','(','B','/','W',')'},
	{'E','X','T',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{278,279},	// auto
	{296,297},	// day
	{298,278},	// night
	{294,295},	// ext
};

// daynight menu info
static ROMDATA OSD_MENU_INFO DYNTMenuInfo[] = {
	// menu,				attb,		Item,					init,	max,							title
	{(PWORD)DYNTModeMenu,	MENU_ITEM,	(PWORD)DYNTModeItem,	0,		GetArrayMax(DYNTModeItem)/2,	(PWORD)DYNTMenuTitle	},
	{(PWORD)DYNTDelayMenu,	MENU_VALUE,	NULL,					5,		60,								(PWORD)DYNTMenuTitle	},
	{(PWORD)AGCD2NMenu,		MENU_VALUE,	NULL,					165,	255,							(PWORD)DYNTMenuTitle	},
	{(PWORD)AGCN2DMenu,		MENU_VALUE,	NULL,					65,		254,							(PWORD)DYNTMenuTitle	},
	{(PWORD)NColorMenu,		MENU_ITEM,	(PWORD)OnOffItem,		0,		GetArrayMax(OnOffItem)/2,		(PWORD)DYNTMenuTitle	},
	{(PWORD)ColorBurstMenu,	MENU_ITEM,	(PWORD)OnOffItem,		0,		GetArrayMax(OnOffItem)/2,		(PWORD)DYNTMenuTitle	},
	{(PWORD)RetMenu,		MENU_EXIT,	(PWORD)BlankItem,		0,		GetArrayMax(BlankItem)/2,		(PWORD)DYNTMenuTitle	},
};

//--------------------------------------------------------------------------------------------------------------------------
//  5-1. Noise Reduction
//--------------------------------------------------------------------------------------------------------------------------

// dnr menu title
static ROMDATA WORD DNRMenuTitle[][MenuTitleCol]	= {
	// eng
	{'N','O','I','S','E',' ','R','E','D','U','C','T','I','O','N',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{270,271,272,273},	// noise reduction
	{0},
};

// dnr menu
static ROMDATA WORD DNRModeMenu[][MenuNameCol]		= {{'D','N','R',' ','M','O','D','E',' ',' ',' ',' ',' ',' '},{378,369}};
static ROMDATA WORD DNRLevelMenu[][MenuNameCol]		= {{'D','N','R',' ','L','E','V','E','L',' ',' ',' ',' ',' '},{287,288}};
static ROMDATA WORD DNRApertureMenu[][MenuNameCol]	= {{'D','N','R',' ','A','P','E','R','T','U','R','E',' ',' '},{'A','P','E','R','T','U','R','E'}};

// dnr menu item
static ROMDATA WORD DNRModeItem[][MenuItemCol] = {
	// eng
	{'O','F','F',' ',' ',' ',' ',' ',' ',' '},
	{'2','D',' ',' ',' ',' ',' ',' ',' ',' '},
	{'3','D',' ',' ',' ',' ',' ',' ',' ',' '},
	{'2','D','+','3','D',' ',' ',' ',' ',' '},
	// chn
	{284},					// off
	{'2',323},				// 2d
	{'3',323},				// 3d
	{'2',323,'+','3',323},	// 2d+3d
};

static ROMDATA WORD DNRLevelItem[][MenuItemCol]	= {
	// eng
	{'A','U','T','O',' ',' ',' ',' ',' ',' '},
	{'L','O','W',' ',' ',' ',' ',' ',' ',' '},
	{'M','I','D','D','L','E',' ',' ',' ',' '},
	{'H','I','G','H',' ',' ',' ',' ',' ',' '},
	// chn
	{278,279},	// auto
	{314},		// low
	{315},		// middle
	{316},		// high
};

// dnr menu info
static ROMDATA OSD_MENU_INFO DNRMenuInfo[] = {
	// menu,				attb,		Item,					init,	max,							title
	{(PWORD)DNRModeMenu,	MENU_ITEM,	(PWORD)DNRModeItem,		3,		GetArrayMax(DNRModeItem)/2,		(PWORD)DNRMenuTitle	},
	{(PWORD)DNRLevelMenu,	MENU_ITEM,	(PWORD)DNRLevelItem,	0,		GetArrayMax(DNRLevelItem)/2,	(PWORD)DNRMenuTitle	},
	{(PWORD)DNRApertureMenu,MENU_VALUE,	NULL,					2,		4,								(PWORD)DNRMenuTitle	},
	{(PWORD)RetMenu,		MENU_EXIT,	(PWORD)BlankItem,		0,		GetArrayMax(BlankItem)/2,		(PWORD)DNRMenuTitle	},
};

//--------------------------------------------------------------------------------------------------------------------------
// 6-1. Privacy Mask
//--------------------------------------------------------------------------------------------------------------------------

// pm menu title
static ROMDATA WORD PMMenuTitle[][MenuTitleCol]	= {
	// eng
	{'P','R','I','V','A','C','Y',' ','M','A','S','K',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{370,371,372,373},	// privacy mask
	{0},
};

// pm menu
static ROMDATA WORD PMModeMenu[][MenuNameCol]			= {{'M','O','D','E',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},{378,369}};
static ROMDATA WORD PMTypeMenu[][MenuNameCol]			= {{'T','Y','P','E',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},{415,416}};
static ROMDATA WORD PMMaskNoMenu[][MenuNameCol]		= {{'M','A','S','K',' ','N','O','.',' ',' ',' ',' ',' ',' '},{376,377,387}};
static ROMDATA WORD PMDisplayMenu[][MenuNameCol]		= {{' ','D','I','S','P','L','A','Y',' ',' ',' ',' ',' ',' '},{0,376,377,390,391}};
static ROMDATA WORD ColorMenu[][MenuNameCol]			= {{' ','C','O','L','O','R',' ',' ',' ',' ',' ',' ',' ',' '},{0,376,377,296,297}};
static ROMDATA WORD PolySelect[][MenuNameCol]			= {{' ','P','O','L','Y',' ','S','E','L','E','C','T',' ',' '},{0,374,375,356,281}};
static ROMDATA WORD PMPosiXMenu[][MenuNameCol]			= {{' ','P','O','S','I','T','I','O','N','-','X',' ',' ',' '},{0,342,265,381,382}};
static ROMDATA WORD PMPosiYMenu[][MenuNameCol]			= {{' ','P','O','S','I','T','I','O','N','-','Y',' ',' ',' '},{0,343,344,381,382}};
static ROMDATA WORD PMSizeXMenu[][MenuNameCol]			= {{' ','S','I','Z','E','-','X',' ',' ',' ',' ',' ',' ',' '},{0,292,306}};
static ROMDATA WORD PMSizeYMenu[][MenuNameCol]			= {{' ','S','I','Z','E','-','Y',' ',' ',' ',' ',' ',' ',' '},{0,316,306}};

// pm menu item
static ROMDATA WORD PMTypeItem[][MenuItemCol]	= {
	// eng
	{'S','Q','U','A','R','E',' ',' ',' ',' '},
	{'P','O','L','Y','G','O','N',' ',' ',' '},
	// chn
	{417,418,419},	// square
	{420,360,419},	// polygon
};

static ROMDATA WORD PMMaskNoItem[][MenuItemCol]	= {
	// eng
	{'M','A','S','K',' ','1',' ',' ',' ',' '},
	{'M','A','S','K',' ','2',' ',' ',' ',' '},
	{'M','A','S','K',' ','3',' ',' ',' ',' '},
	{'M','A','S','K',' ','4',' ',' ',' ',' '}, 
	{'M','A','S','K',' ','5',' ',' ',' ',' '},
	{'M','A','S','K',' ','6',' ',' ',' ',' '},
	{'M','A','S','K',' ','7',' ',' ',' ',' '},
	{'M','A','S','K',' ','8',' ',' ',' ',' '},
	// chn
	{376,377,0,'1'},	// mask 1
	{376,377,0,'2'},	// mask 2
	{376,377,0,'3'},	// mask 3
	{376,377,0,'4'},	// mask 4
	{376,377,0,'5'},	// mask 5
	{376,377,0,'6'},	// mask 6
	{376,377,0,'7'},	// mask 7
	{376,377,0,'8'},	// mask 8
};

static ROMDATA WORD PMPolyPosiItem[][MenuItemCol] = {
	// eng
	{'L','-','T','O','P',' ',' ',' ',' ',' '},
	{'R','-','T','O','P',' ',' ',' ',' ',' '},
	{'L','-','B','O','T','T','O','M',' ',' '},
	{'R','-','B','O','T','T','O','M',' ',' '},
	// chn
	{359,379},	// left top
	{361,379},	// right top
	{359,380},	// left bottom
	{361,380},	// right bottom
};

static ROMDATA WORD PMColorItem[][MenuItemCol] = {
	// eng
	{'B','L','A','C','K',' ',' ',' ',' ',' '},
	{'W','H','I','T','E',' ',' ',' ',' ',' '},
	{'G','R','E','E','N',' ',' ',' ',' ',' '},
	{'B','L','U','E',' ',' ',' ',' ',' ',' '},
	{'R','E','D',' ',' ',' ',' ',' ',' ',' '},
	{'C','Y','A','N',' ',' ',' ',' ',' ',' '},
	{'M','A','G','E','N','T','A',' ',' ',' '},
	{'Y','E','L','L','O','W',' ',' ',' ',' '},
	{'G','R','A','Y','-','1',' ',' ',' ',' '},
	{'G','R','A','Y','-','2',' ',' ',' ',' '},
	{'G','R','A','Y','-','3',' ',' ',' ',' '},
	{'G','R','A','Y','-','4',' ',' ',' ',' '},
	{'G','R','A','Y','-','5',' ',' ',' ',' '},
	{'G','R','A','Y','-','6',' ',' ',' ',' '},
	{'M','O','S','A','I','C',' ',' ',' ',' '},
	// chn
	{298,297},			// black
	{264,297},			// white
	{351,297},			// green
	{353,297},			// blue
	{352,297},			// red
	{425,297},			// cyan
	{424,352,297},		// magenta
	{350,297},			// yellow
	{363,297,'-','1'},	// gray-1
	{363,297,'-','2'},	// gray-2
	{363,297,'-','3'},	// gray-3
	{363,297,'-','4'},	// gray-4
	{363,297,'-','5'},	// gray-5
	{363,297,'-','6'},	// gray-6
	{453,454,455},		// mosaic
};

// pm menu info
static ROMDATA OSD_MENU_INFO PMMenuInfo[] = {
	// menu,				attb,		Item,					init,	max,							title
	{(PWORD)PMModeMenu,		MENU_ITEM,	(PWORD)OnOffItem,		0,		GetArrayMax(OnOffItem)/2,		(PWORD)PMMenuTitle	},
	{(PWORD)PMTypeMenu,		MENU_ITEM,	(PWORD)PMTypeItem,		0,		GetArrayMax(PMTypeItem)/2,		(PWORD)PMMenuTitle	},
	{(PWORD)PMMaskNoMenu,	MENU_ITEM,	(PWORD)PMMaskNoItem,	0,		GetArrayMax(PMMaskNoItem)/2,	(PWORD)PMMenuTitle	},
	{(PWORD)PMDisplayMenu,	MENU_ITEM,	(PWORD)OnOffItem,		1,		GetArrayMax(OnOffItem)/2,		(PWORD)PMMenuTitle	},
	{(PWORD)ColorMenu,		MENU_ITEM,	(PWORD)PMColorItem,		0,		GetArrayMax(PMColorItem)/2,		(PWORD)PMMenuTitle	},
	{(PWORD)PolySelect,		MENU_ITEM,	(PWORD)PMPolyPosiItem,	0,		GetArrayMax(PMPolyPosiItem)/2,	(PWORD)PMMenuTitle	},
	{(PWORD)PMPosiXMenu,	MENU_VALUE,	NULL,					0,		255,							(PWORD)PMMenuTitle	},
	{(PWORD)PMPosiYMenu,	MENU_VALUE,	NULL,					1,		216,							(PWORD)PMMenuTitle	},
	{(PWORD)PMSizeXMenu,	MENU_VALUE,	NULL,					0,		120,							(PWORD)PMMenuTitle	},
	{(PWORD)PMSizeYMenu,	MENU_VALUE,	NULL,					0,		68,								(PWORD)PMMenuTitle	},
	{(PWORD)DefaultMenu,	MENU_FUNC,	(PWORD)BlankItem,		0,		GetArrayMax(BlankItem)/2,		(PWORD)PMMenuTitle	},
	{(PWORD)RetMenu,		MENU_EXIT,	(PWORD)BlankItem,		0,		GetArrayMax(BlankItem)/2,		(PWORD)PMMenuTitle	},
};

//--------------------------------------------------------------------------------------------------------------------------
// 7-1.Effect
//--------------------------------------------------------------------------------------------------------------------------

// effect menu title
static ROMDATA WORD EffectMenuTitle[][MenuTitleCol]	= {
	// eng
	{'E','F','F','E','C','T',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{338,334,362,339},	// effect
	{0},
};

// effect menu
static ROMDATA WORD LensShading[][MenuNameCol]			= {{'L','E','N','S',' ','S','H','A','D','I','N','G',' ',' '},{260,261,326,325,268,269}};
static ROMDATA WORD GMCorrect[][MenuNameCol]			= {{'G','A','M','M','A',' ','C','O','R','R','E','C','T',' '},{430,431,432,404}};
static ROMDATA WORD ContrastMenu[][MenuNameCol]		= {{'C','O','N','T','R','A','S','T',' ',' ',' ',' ',' ',' '},{434,435,306}};
static ROMDATA WORD ColBrightMenu[][MenuNameCol]		= {{'B','R','I','G','H','T','N','E','S','S',' ',' ',' ',' '},{305,306}};
static ROMDATA WORD SaturationMenu[][MenuNameCol]		= {{'S','A','T','U','R','A','T','I','O','N',' ',' ',' ',' '},{297,436,437,306}};
static ROMDATA WORD HueMenu[][MenuNameCol]				= {{'H','U','E',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},{297,362}};
static ROMDATA WORD EdgeEnhance[][MenuNameCol]			= {{'E','D','G','E',' ','E','N','H','A','N','C','E',' ',' '},{360,438,312,289}};

static ROMDATA WORD AutoSatEn[][MenuNameCol]		= {{'A','U','T','O',' ','S','A','T','U','R','A','T','E',' '},{278,279,297,436,437,306}};
static ROMDATA WORD AutoEdgeEn[][MenuNameCol]		= {{'A','U','T','O',' ','E','D','G','E',' ',' ',' ',' ',' '},{278,279,360,438,312,289}};
//static ROMDATA WORD AutoBrightEn[][MenuNameCol]	= {{'A','U','T','O',' ','B','R','I','G','H','T',' ',' ',' '},{278,279,305,306}};
// effect menu item
static ROMDATA WORD GammaItem[][MenuItemCol] = {
#if defined(__USE_MDIN_i500__) 		// MDIN-i500
	// eng
	{'O','N',' ',' ',' ',' ',' ',' ',' ',' '},
	{'O','F','F','(','1','.','0',')',' ',' '},
	{'0','.','9',' ',' ',' ',' ',' ',' ',' '},
	{'0','.','8',' ',' ',' ',' ',' ',' ',' '}, 
	{'0','.','7',' ',' ',' ',' ',' ',' ',' '},
	{'0','.','6',' ',' ',' ',' ',' ',' ',' '},
	{'0','.','5','5',' ',' ',' ',' ',' ',' '},
	{'0','.','5',' ',' ',' ',' ',' ',' ',' '},
	{'0','.','4','5',' ',' ',' ',' ',' ',' '},
	{'0','.','4',' ',' ',' ',' ',' ',' ',' '},
	{'C','U','S','T','O','M',' ',' ',' ',' '},
	// chn
	{285},						// on
	{284,'(','1','.','0',')'},	// off(1.0)
	{'0','.','9'},				// 0.9
	{'0','.','8'},				// 0.8
	{'0','.','7'},				// 0.7
	{'0','.','6'},				// 0.6
	{'0','.','5','5'},			// 0.55
	{'0','.','5'},				// 0.5
	{'0','.','4','5'},			// 0.45
	{'0','.','4'},				// 0.4
	{383,384},					// custom
#else 								// MDIN-i51X (i510, i540, i550)
	// eng
	{'O','N',' ',' ',' ',' ',' ',' ',' ','>'},
	{'O','F','F','(','1','.','0',')',' ','>'},
	// chn
	{285,0,0,0,0,0,0,0,0,'>'},				// on >
	{284,'(','1','.','0',')',0,0,0,'>'},	// off(1.0) >
#endif
};

static ROMDATA WORD AutoAdjustItem[][MenuItemCol]		= {
	// eng
	{'O','F','F',' ',' ',' ',' ',' ',' ',' '},
	{'L','O','W',' ',' ',' ',' ',' ',' ',' '},
	{'M','I','D','D','L','E',' ',' ',' ',' '},
	{'H','I','G','H',' ',' ',' ',' ',' ',' '},
	// chn
	{284},	// off
	{314},	// low
	{315},	// mid
	{316},	// high
};


// effect menu info
static ROMDATA OSD_MENU_INFO EffectMenuInfo[] = {
	// menu,				attb,		Item,					init,	max,							title
	{(PWORD)LensShading,	MENU_ITEM,	(PWORD)OnOffItem,		0,		GetArrayMax(OnOffItem)/2,		(PWORD)EffectMenuTitle	},
	#if defined(__USE_MDIN_i500__)			// MDIN-i500
	{(PWORD)GMCorrect,		MENU_ITEM,	(PWORD)GammaItem,		0,		GetArrayMax(GammaItem)/2,		(PWORD)EffectMenuTitle	},
	#else									// MDIN-i51X (i510, i540, i550)
//	{(PWORD)GMCorrect,		MENU_ITEM,	(PWORD)GammaItem,		0,		GetArrayMax(GammaItem)/2,		(PWORD)EffectMenuTitle	},
	{(PWORD)GMCorrect,		MENU_SUB,	(PWORD)GammaItem,		0,		GetArrayMax(GammaItem)/2,		(PWORD)EffectMenuTitle	},
	#endif
	{(PWORD)ContrastMenu,	MENU_VALUE,	NULL,					10,		20,								(PWORD)EffectMenuTitle	},
	{(PWORD)ColBrightMenu,	MENU_VALUE,	NULL,					10,		20,								(PWORD)EffectMenuTitle	},
	{(PWORD)SaturationMenu,	MENU_VALUE,	NULL,					10,		20,								(PWORD)EffectMenuTitle	},
	{(PWORD)HueMenu,		MENU_VALUE,	NULL,					10,		20,								(PWORD)EffectMenuTitle	},
#if defined(__USE_EXT2IPP__) || defined(__USE_NO__CMOS__)
	{(PWORD)EdgeEnhance,	MENU_SKIP,	NULL,					10,		20,								(PWORD)EffectMenuTitle	},
	{(PWORD)AutoSatEn,		MENU_SKIP,	(PWORD)AutoAdjustItem,	2,		GetArrayMax(AutoAdjustItem)/2,	(PWORD)EffectMenuTitle	},	
	{(PWORD)AutoEdgeEn,		MENU_SKIP,	(PWORD)OnOffItem,		1,		GetArrayMax(OnOffItem)/2,		(PWORD)EffectMenuTitle	},		
#else	
	{(PWORD)EdgeEnhance,	MENU_VALUE,	NULL,					10,		20,								(PWORD)EffectMenuTitle	},
	{(PWORD)AutoSatEn,		MENU_ITEM,	(PWORD)AutoAdjustItem,	2,		GetArrayMax(AutoAdjustItem)/2,	(PWORD)EffectMenuTitle	},	
	{(PWORD)AutoEdgeEn,		MENU_ITEM,	(PWORD)OnOffItem,		1,		GetArrayMax(OnOffItem)/2,		(PWORD)EffectMenuTitle	},		
#endif
//	{(PWORD)AutoBrightEn,	MENU_ITEM,	(PWORD)AutoAdjustItem,	2,		GetArrayMax(AutoAdjustItem)/2,	(PWORD)EffectMenuTitle	},			
	{(PWORD)DefaultMenu,	MENU_FUNC,	(PWORD)BlankItem,		0,		GetArrayMax(BlankItem)/2,		(PWORD)EffectMenuTitle	},
	{(PWORD)RetMenu,		MENU_EXIT,	(PWORD)BlankItem,		0,		GetArrayMax(BlankItem)/2,		(PWORD)EffectMenuTitle	},
};

//--------------------------------------------------------------------------------------------------------------------------
// 7-2. Effect - GMCorrect Option
//--------------------------------------------------------------------------------------------------------------------------

static ROMDATA WORD GMCMenuTitle[][MenuTitleCol]	= {
	// eng
	{'G','A','M','M','A',' ','C','O','R','R','E','C','T','I','O','N',' ','O','P','T','I','O','N',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{430,431,432,404},	// gamma correction
	{0},
};

// GMCorrect mode setup menu
static ROMDATA WORD GM_FRONT[][MenuNameCol]			= {{'F','R','O','N','T',' ','G','M',' ','E','N',' ',' ',' '},{481,261,430,431,432,404}};
static ROMDATA WORD GM_REAR[][MenuNameCol]			= {{'R','E','A','R',' ','G','M',' ','E','N',' ',' ',' ',' '},{481,482,430,431,432,404}};
static ROMDATA WORD GM_8TAP_INV[][MenuNameCol]		= {{'R','E','A','R',' ','G','M',' ','I','N','V',' ',' ',' '},{481,482,483,430,431,432,404}};
static ROMDATA WORD GM_Bayer_LUT_EXTAND[][MenuNameCol]	= {{'B','A','Y','-','L','U','T',' ','E','X','T','E','N','D'},{497,498,45,487,488,484,485,486}};
static ROMDATA WORD GM_RGB_LUT_EXTAND[][MenuNameCol]	= {{'R','G','B','-','L','U','T',' ','E','X','T','E','N','D'},{352,351,353,45,487,488,484,485,486}};
static ROMDATA WORD GM_YC_LUT_EXTAND[][MenuNameCol]	= {{'Y','-','L','U','T',' ','E','X','T','E','N','D',' ',' '},{89,45,487,488,484,485,486}};
static ROMDATA WORD GM_BYLUT_Xresolution[][MenuNameCol]	= {{'B','Y','L','U','T',' ','X','S','A','M','P','L','E',' '},{497,498,45,484,485,486,378,369}};
static ROMDATA WORD GM_RGBLUT_Xresolution[][MenuNameCol]	= {{'R','G','B','L','U','T',' ','X','S','A','M','P','L','E'},{352,351,353,45,484,485,486,378,369}};

static ROMDATA WORD GM_F_Item[][MenuItemCol] = {					// MDIN-i51X (i510, i540, i550)
	// eng
	{'D','E','F','A','U','L','T',' ',' ',' '},
	{'O','F','F','-','B','Y','P','A','S','S'},
	{'0','.','9',' ',' ',' ',' ',' ',' ',' '},
	{'0','.','8',' ',' ',' ',' ',' ',' ',' '}, 
	{'0','.','7',' ',' ',' ',' ',' ',' ',' '},
	{'0','.','6',' ',' ',' ',' ',' ',' ',' '},
	{'0','.','5','5',' ',' ',' ',' ',' ',' '},
	{'0','.','5',' ',' ',' ',' ',' ',' ',' '},
	{'0','.','4','5',' ',' ',' ',' ',' ',' '},
	{'0','.','4',' ',' ',' ',' ',' ',' ',' '},
	{'C','U','S','T','O','M',' ',' ',' ',' '},
	// chn
	{394,381},				// default
	{284,'(',479,480,')'},	// off(bypass)
	{'0','.','9'},			// 0.9
	{'0','.','8'},			// 0.8
	{'0','.','7'},			// 0.7
	{'0','.','6'},			// 0.6
	{'0','.','5','5'},		// 0.55
	{'0','.','5'},			// 0.5
	{'0','.','4','5'},		// 0.45
	{'0','.','4'},			// 0.4
	{383,384},				// custom
};

static ROMDATA WORD GM_R_Item[][MenuItemCol] = {					// MDIN-i51X (i510, i540, i550)
	// eng
	{'D','E','F','A','U','L','T',' ',' ',' '},
	{'O','F','F','-','B','Y','P','A','S','S'},
	{'0','.','9',' ',' ',' ',' ',' ',' ',' '},
	{'0','.','8',' ',' ',' ',' ',' ',' ',' '}, 
	{'0','.','7',' ',' ',' ',' ',' ',' ',' '},
	{'0','.','6',' ',' ',' ',' ',' ',' ',' '},
	{'0','.','5','5',' ',' ',' ',' ',' ',' '},
	{'0','.','5',' ',' ',' ',' ',' ',' ',' '},
	{'0','.','4','5',' ',' ',' ',' ',' ',' '},
	{'0','.','4',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{394,381},				// default
	{284,'(',479,480,')'},	// off(bypass)
	{'0','.','9'},			// 0.9
	{'0','.','8'},			// 0.8
	{'0','.','7'},			// 0.7
	{'0','.','6'},			// 0.6
	{'0','.','5','5'},		// 0.55
	{'0','.','5'},			// 0.5
	{'0','.','4','5'},		// 0.45
	{'0','.','4'},			// 0.4
};

static ROMDATA WORD GM_INV_Item[][MenuItemCol] = {				// MDIN-i51X (i510, i540, i550)
	// eng
	{'D','E','F','A','U','L','T',' ',' ',' '},
	{'O','F','F',' ',' ',' ',' ',' ',' ',' '},
	{'0','.','9',' ',' ',' ',' ',' ',' ',' '},
	{'0','.','8',' ',' ',' ',' ',' ',' ',' '}, 
	{'0','.','7',' ',' ',' ',' ',' ',' ',' '},
	{'0','.','6',' ',' ',' ',' ',' ',' ',' '},
	{'0','.','5','5',' ',' ',' ',' ',' ',' '},
	{'0','.','5',' ',' ',' ',' ',' ',' ',' '},
	{'0','.','4','5',' ',' ',' ',' ',' ',' '},
	{'0','.','4',' ',' ',' ',' ',' ',' ',' '},
	{'C','U','S','T','O','M',' ',' ',' ',' '},
	// chn
	{394,381},			// default
	{284},				// off
	{'0','.','9'},		// 0.9
	{'0','.','8'},		// 0.8
	{'0','.','7'},		// 0.7
	{'0','.','6'},		// 0.6
	{'0','.','5','5'},	// 0.55
	{'0','.','5'},		// 0.5
	{'0','.','4','5'},	// 0.45
	{'0','.','4'},		// 0.4
	{383,384},			// custom
};

static ROMDATA WORD GM_LUT_EXTAND_Item[][MenuItemCol] = {			// MDIN-i51X (i510, i540, i550)
	// eng
	{'U','N','I','F','O','R','M',' ',' ',' '},
	{'E','X','T','E','N','D','-','F','2','C'},
//	{'E','X','T','E','N','D','-','C','2','F'},
	// chn
	{'U','N','I','F','O','R','M',' ',' ',' '},
	{'E','X','T','E','N','D','-','F','2','C'},
//	{'E','X','T','E','N','D','-','C','2','F'},
};

static ROMDATA WORD GM_LUT_Xresolution_Item[][MenuItemCol] = {	// MDIN-i51X (i510, i540, i550)
	// eng
	{'2','5','6','x','2','5','6','L','U','T'},
	{'1','2','8','x','2','5','6','L','U','T'},
	{'6','4','x','2','5','6','L','U','T',' '},
	{'3','2','x','2','5','6','L','U','T',' '},
	// chn
	{'2','5','6','x','2','5','6','L','U','T'},
	{'1','2','8','x','2','5','6','L','U','T'},
	{'6','4','x','2','5','6','L','U','T',' '},
	{'3','2','x','2','5','6','L','U','T',' '},
};

// GM menu info
static ROMDATA OSD_MENU_INFO GMCMenuInfo[] = {
	// menu,				attb,		Item,					init,	max,							title
	{(PWORD)GM_FRONT,		MENU_ITEM,		(PWORD)GM_F_Item,		0,	GetArrayMax(GM_F_Item)/2,		(PWORD)GMCMenuTitle	},
	
	#if defined(__RGBGAMMA_USE_ADJUST__)	
	{(PWORD)GM_REAR,		MENU_SKIP,		(PWORD)GM_R_Item,		0,	GetArrayMax(GM_R_Item)/2,		(PWORD)GMCMenuTitle	},	
	#else
	{(PWORD)GM_REAR,		MENU_ITEM,		(PWORD)GM_R_Item,		0,	GetArrayMax(GM_R_Item)/2,		(PWORD)GMCMenuTitle	},	
	#endif	
	
	{(PWORD)GM_8TAP_INV,	MENU_ITEM,		(PWORD)GM_INV_Item,	0,		GetArrayMax(GM_INV_Item)/2,		(PWORD)GMCMenuTitle	},		
	
	{(PWORD)GM_Bayer_LUT_EXTAND,	MENU_TEXT,	(PWORD)GM_LUT_EXTAND_Item,	0,	GetArrayMax(GM_LUT_EXTAND_Item)/2,	(PWORD)GMCMenuTitle	},			
	
	#if defined(__RGBGAMMA_USE_ADJUST__)
	{(PWORD)GM_RGB_LUT_EXTAND,	MENU_TEXT,		(PWORD)GM_LUT_EXTAND_Item,	0,	GetArrayMax(GM_LUT_EXTAND_Item)/2,	(PWORD)GMCMenuTitle	},		
	#else
	{(PWORD)GM_RGB_LUT_EXTAND,	MENU_ITEM,		(PWORD)GM_LUT_EXTAND_Item,	0,	GetArrayMax(GM_LUT_EXTAND_Item)/2,	(PWORD)GMCMenuTitle	},	
	#endif
	
	{(PWORD)GM_YC_LUT_EXTAND,	MENU_ITEM,		(PWORD)GM_LUT_EXTAND_Item,	0,	GetArrayMax(GM_LUT_EXTAND_Item)/2,	(PWORD)GMCMenuTitle	},		
	{(PWORD)GM_BYLUT_Xresolution,	MENU_ITEM,	(PWORD)GM_LUT_Xresolution_Item,	2,	GetArrayMax(GM_LUT_Xresolution_Item)/2,	(PWORD)GMCMenuTitle	},		
	{(PWORD)GM_RGBLUT_Xresolution,	MENU_ITEM,	(PWORD)GM_LUT_Xresolution_Item,	2,	GetArrayMax(GM_LUT_Xresolution_Item)/2,	(PWORD)GMCMenuTitle	},			
	{(PWORD)RetMenu,	MENU_EXIT,	(PWORD)BlankItem,	0,		GetArrayMax(BlankItem)/2,	(PWORD)GMCMenuTitle	},	
};


//--------------------------------------------------------------------------------------------------------------------------
// 8-1.Special
//--------------------------------------------------------------------------------------------------------------------------

// special menu title
static ROMDATA WORD SpecialMenuTitle[][MenuTitleCol]	= {
	// eng
	{'S','P','E','C','I','A','L',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{276,277},	// special
	{0},
};

// special menu
static ROMDATA WORD Dzoom[][MenuNameCol]			= {{'D','Z','O','O','M',' ',' ',' ',' ',' ',' ',' ',' ',' '},{270,271,345,280}};
#if defined(__USE_DEFOG_DWDR_ONE_MENU__)
static ROMDATA char DefogDwdr[][MenuNameCol]		= {{'D','E','F','O','G','/','D','W','D','R',' ',' ',' ',' '},{318,319,'/',270,271,292,279,293}};
#else
static ROMDATA WORD Defog[][MenuNameCol]			= {{'D','E','F','O','G',' ',' ',' ',' ',' ',' ',' ',' ',' '},{318,319}};
static ROMDATA WORD Dwdr[][MenuNameCol]			= {{'D','W','D','R',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},{270,271,292,279,293}};
#endif
static ROMDATA WORD MDetect[][MenuNameCol]			= {{'M','O','T','I','O','N',' ','D','E','T','E','C','T',' '},{381,426,439,440}};
static ROMDATA WORD DISMenu[][MenuNameCol]			= {{'D','I','S',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},{270,271,346,347}};
static ROMDATA WORD BLight[][MenuNameCol]			= {{'B','A','C','K','L','I','G','H','T',' ',' ',' ',' ',' '},{267,263,268,269}};
static ROMDATA WORD Binning[][MenuNameCol]			= {{'B','I','N','N','I','N','G',' ',' ',' ',' ',' ',' ',' '},{334,443,310,311}};
static ROMDATA WORD FLKDet[][MenuNameCol]			= {{'F','L','I','C','K','E','R',' ','D','E','T','E','C','T'},{'F','L','I','C','K','E','R',439,440}};
static ROMDATA WORD DPixel[][MenuNameCol]			= {{'D','E','F','E','C','T',' ','P','I','X','E','L',' ',' '},{441,442,334,443,268,269}};
static ROMDATA WORD DispFunc[][MenuNameCol]		= {{'D','I','S','P','.',' ','F','U','N','C','T','I','O','N'},{338,334,428,429}};
static ROMDATA WORD WDRMenu[][MenuNameCol]			= {{'W','D','R',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},{292,279,293}};
static ROMDATA WORD BlankMenu[][MenuNameCol]		= {{' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},{0,0,0}};

// special menu item
#if defined(__USE_DEFOG_DWDR_ONE_MENU__)
static ROMDATA WORD DefogDwdrItem[][MenuItemCol]		= {
#if defined(__USE_MDIN_i500__)				// MDIN-i500
	// eng
	{'O','F','F',' ',' ',' ',' ',' ',' ',' '},
	{'A','U','T','O',' ',' ',' ',' ',' ',' '},
	{'D','E','F','O','G','-','O','N',' ',' '},
	// chn
	{284},							// off
	{278,279,0,0,0,0,0,0,0,' '},	// auto
	{318,319,'-',285,0,0,0,0,0,' '},		// defog-on
#else										// MDIN-i51X (i510, i540, i550)
	// eng
	{'O','F','F',' ',' ',' ',' ',' ',' ',' '},
	{'D','E','F','O','G','-','A','U','T','O'},
	{'D','W','D','R','-','A','U','T','O','>'},
	{'F','U','L','L',' ','A','U','T','O','>'},
	{'D','E','F','O','G','-','O','N',' ','>'},
	{'D','W','D','R','-','O','N',' ',' ','>'},
	// chn
	{284},						// off
	{318,319,'-',278,279},	// defog-auto
	{270,271,292,279,293,'-',278,279,0,'>'},	// dwdr-auto >
	{278,279,0,0,0,0,0,0,0,'>'},	// auto >
	{318,319,'-',285,0,0,0,0,0,'>'},	// defog-on >
	{270,271,292,279,293,'-',285,0,0,'>'},	// dwdr-on >
#endif
};
#else //__USE_DEFOG_DWDR_ONE_MENU__
static ROMDATA WORD DefogItem[][MenuItemCol]		= {
#if defined(__USE_MDIN_i500__)				// MDIN-i500
	// eng
	{'O','F','F',' ',' ',' ',' ',' ',' ',' '},
	{'A','U','T','O',' ',' ',' ',' ',' ',' '},
	{'O','N',' ',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{284},							// off
	{278,279,0,0,0,0,0,0,0,' '},	// auto
	{285,0,0,0,0,0,0,0,0,' '},		// on
#else										// MDIN-i51X (i510, i540, i550)
	// eng
	{'O','F','F',' ',' ',' ',' ',' ',' ',' '},
	{'O','N',' ',' ',' ',' ',' ',' ',' ','>'},
	{'A','U','T','O',' ',' ',' ',' ',' ','>'},
	// chn
	{284},						// off
	{285,0,0,0,0,0,0,0,0,'>'},	// on >
	{278,279,0,0,0,0,0,0,0,'>'},	// auto >
#endif
};

static ROMDATA WORD DWDRItem[][MenuItemCol]		= {
	// eng
	{'O','F','F',' ',' ',' ',' ',' ',' ',' '},
	{'O','N',' ',' ',' ',' ',' ',' ',' ','>'},
	{'A','U','T','O',' ',' ',' ',' ',' ','>'},
	// chn
	{284},							// off
	{285,0,0,0,0,0,0,0,0,'>'},		// on >
	{278,279,0,0,0,0,0,0,0,'>'},	// auto >
};
#endif  //__USE_DEFOG_DWDR_ONE_MENU__


static ROMDATA WORD BLightItem[][MenuItemCol]		= {
	// eng
	{'O','F','F',' ',' ',' ',' ',' ',' ',' '},
	{'B','L','C',' ',' ',' ',' ',' ',' ','>'},
	{'H','L','M',' ',' ',' ',' ',' ',' ','>'},
	// chn
	{284},								// off
	{267,263,268,269,0,0,0,0,0,'>'},	// blc >
	{289,263,290,291,0,0,0,0,0,'>'},	// hlm >
};



static ROMDATA WORD BinningItem[][MenuItemCol] = {
	// eng
	{'O','F','F',' ',' ',' ',' ',' ',' ',' '},
	{'O','N',' ',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{284},	// off
	{285},	// on
};

static ROMDATA WORD DPixelItem[][MenuItemCol] = {
#if defined(__USE_MDIN_i500__) 				// MDIN-i500
	// eng
	{'O','F','F',' ',' ',' ',' ',' ',' ','>'},
	{'O','N',' ',' ',' ',' ',' ',' ',' ','>'},
	{'S','T','A','T','I','C',' ',' ',' ','>'},
	// chn
	{284,0,0,0,0,0,0,0,0,62},		// off >
	{285,0,0,0,0,0,0,0,0,62},		// on >
	{309,293,0,0,0,0,0,0,0,62},		// static >
#else 										// i510, i540, i550
	// eng
	{'O','F','F',' ',' ',' ',' ',' ',' ','>'},
	{'O','N',' ',' ',' ',' ',' ',' ',' ','>'},
	{'S','T','A','T','I','C',' ',' ',' ','>'},
	{'O','N','(','F','I','X','E','D',')','>'},
	// chn
	{284,0,0,0,0,0,0,0,0,62},		// off >
	{285,0,0,0,0,0,0,0,0,62},		// on >
	{309,293,0,0,0,0,0,0,0,62},		// static >
	{285,40,314,41,0,0,0,0,0,62},	// on(low) >
#endif
	
};


// special menu info
static ROMDATA OSD_MENU_INFO SpecialMenuInfo[] = {
	// menu,			attb,		Item,				init,	max,							title
	{(PWORD)Dzoom,		MENU_SUB,	(PWORD)OnOffSub,	0,		GetArrayMax(OnOffSub)/2,		(PWORD)SpecialMenuTitle	},
#if defined(__USE_DEFOG_DWDR_ONE_MENU__)
	{(PWORD)DefogDwdr,	MENU_SUB,	(PWORD)DefogDwdrItem,	0,	GetArrayMax(DefogDwdrItem)/2,	(PWORD)SpecialMenuTitle	},
	{(PWORD)BlankMenu,	MENU_SKIP,	(PWORD)BlankItem,	0,		GetArrayMax(BlankItem)/2,		(PWORD)SpecialMenuTitle	},	// temp menu
#else
	{(PWORD)Defog,	    MENU_SUB,	(PWORD)DefogItem,	0,	GetArrayMax(DefogItem)/2,	(PWORD)SpecialMenuTitle	},
	{(PWORD)Dwdr,	    MENU_SUB,	(PWORD)DWDRItem,	0,	GetArrayMax(DWDRItem)/2,	(PWORD)SpecialMenuTitle	},
#endif
#if defined(__USE_MDIN_i500__)			// MDIN-i500
	{(PWORD)MDetect,	MENU_SKIP,	(PWORD)OnOffSub,	0,		GetArrayMax(OnOffSub)/2,		(PWORD)SpecialMenuTitle	},
#else									// MDIN-i51X (i510, i540, i550)
	{(PWORD)MDetect,	MENU_SUB,	(PWORD)OnOffSub,	0,		GetArrayMax(OnOffSub)/2,		(PWORD)SpecialMenuTitle	},
#endif
#if (defined(__USE_MDIN_i510__) || defined(__USE_MDIN_i540__) || defined(__USE_MDIN_i550__)) && !defined(__USE_MDIN_i5XX_REV__) 	// i510, i540, i550 org. chip
	{(PWORD)DISMenu,	MENU_SKIP,	(PWORD)OnOffItem,	0,		GetArrayMax(OnOffItem)/2,		(PWORD)SpecialMenuTitle	},
	{(PWORD)BLight,		MENU_SKIP,	(PWORD)BLightItem,	0,		GetArrayMax(BLightItem)/2,		(PWORD)SpecialMenuTitle	},
#elif defined(__USE_AFZOOM_LENS__) && (defined(__USE_CMOS_IMX274__) || defined(__USE_CMOS_IMX226__) || defined(__USE_CMOS_IMX334__) || defined(__USE_CMOS_IMX253__))		//both 4k AF and DIS bandwith limit
	{(PWORD)DISMenu,	MENU_SKIP,	(PWORD)OnOffItem,	0,		GetArrayMax(OnOffItem)/2,		(PWORD)SpecialMenuTitle	},
	{(PWORD)BLight,		MENU_SUB,	(PWORD)BLightItem,	0,		GetArrayMax(BLightItem)/2,		(PWORD)SpecialMenuTitle	},
#else									// MDIN-i500, i51X revision chip
	{(PWORD)DISMenu,	MENU_ITEM,	(PWORD)OnOffItem,	0,		GetArrayMax(OnOffItem)/2,		(PWORD)SpecialMenuTitle	},
	{(PWORD)BLight,		MENU_SUB,	(PWORD)BLightItem,	0,		GetArrayMax(BLightItem)/2,		(PWORD)SpecialMenuTitle	},
#endif
	{(PWORD)Binning,	MENU_ITEM,	(PWORD)BinningItem,	0,		GetArrayMax(BinningItem)/2,		(PWORD)SpecialMenuTitle},
#if defined(__USE_4K60_MD2__) || defined(__USE_NO__CMOS__) || defined(__USE_EXT2IPP__)	
	{(PWORD)DPixel,		MENU_SKIP,	(PWORD)DPixelItem,	1,		GetArrayMax(DPixelItem)/2,		(PWORD)SpecialMenuTitle	},
#else
	{(PWORD)DPixel,		MENU_SUB,	(PWORD)DPixelItem,	1,		GetArrayMax(DPixelItem)/2,		(PWORD)SpecialMenuTitle	},
#endif
	{(PWORD)DispFunc,	MENU_SUB,	(PWORD)SubItem,		0,		GetArrayMax(SubItem)/2,			(PWORD)SpecialMenuTitle	},
#if defined(__USE_WDR_PROCESS__)
	{(PWORD)WDRMenu,	MENU_ITEM,	(PWORD)OnOffItem,	0,		GetArrayMax(OnOffItem)/2,		(PWORD)SpecialMenuTitle	},
#else
	{(PWORD)WDRMenu,	MENU_SKIP,	(PWORD)OnOffItem,	0,		GetArrayMax(OnOffItem)/2,		(PWORD)SpecialMenuTitle	},
#endif
#if defined(__USE_MDIN_i510__) || defined(__USE_MDIN_i540__) || defined(__USE_MDIN_i550__) 	// i510, i540, i550
	{(PWORD)FLKDet,		MENU_ITEM,	(PWORD)OnOffItem,	0,		GetArrayMax(OnOffItem)/2,		(PWORD)SpecialMenuTitle},
#else																						// i500
	{(PWORD)FLKDet,		MENU_SKIP,	(PWORD)OnOffItem,	0,		GetArrayMax(OnOffItem)/2,		(PWORD)SpecialMenuTitle},
#endif
	{(PWORD)RetMenu,	MENU_EXIT,	(PWORD)BlankItem,	0,		GetArrayMax(BlankItem)/2,		(PWORD)SpecialMenuTitle	},
};

//--------------------------------------------------------------------------------------------------------------------------
// 8-2-1'.Special	- DEFOG & DWDR_PARAMETER
//--------------------------------------------------------------------------------------------------------------------------

// defog/dwdr menu title
#if defined(__USE_DEFOG_DWDR_ONE_MENU__)
static ROMDATA WORD DefogDwdrMenuTitle[][MenuTitleCol]	= {
	"DEFOG / D-WDR             ", "                          "
	// eng
	{'D','E','F','O','G',' ','/',' ','D','-','W','D','R',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{318,319,0,'/',0,270,271,346,347},	// defog / dwdr
	{0},
};
// defog/dwdr menu
static ROMDATA WORD DefogDwdrSens[][MenuNameCol]		= {{'S','T','R','E','N','G','T','H',' ',' ',' ',' ',' ',' '},{287,288}};
static ROMDATA WORD DefogDwdrThld[][MenuNameCol]		= {{'T','H','R','E','S','H','O','L','D',' ',' ',' ',' ',' '},{324}};
static ROMDATA WORD DefogDwdrSat[][MenuNameCol]		= {{'S','A','T','U','R','A','T','I','O','N',' ',' ',' ',' '},{297,436,437,306}};
static ROMDATA WORD DefogDwdrLocal[][MenuNameCol]		= {{'L','O','C','A','L',' ','R','A','T','I','O',' ',' ',' '},{'L','O','C','A','L',' ','R','A','T','I','O',' ',' ',' '}};
static ROMDATA WORD DefogDwdrSatSync[][MenuNameCol]	= {{'S','A','T','.',' ','S','Y','N','C',' ',' ',' ',' ',' '},{'S','A','T','.',' ','S','Y','N','C',' ',' ',' ',' ',' '}};
#else
// defog menu title
static ROMDATA WORD DefogMenuTitle[][MenuTitleCol]	= {
#if defined(__USE_MDIN_i500__)		// MDIN-i500
	// eng
	{'D','E','F','O','G',' ','A','U','T','O',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{318,319,},	// defog auto
	{0},
#else       						// MDIN-i51X (i510, i540, i550)
	// eng
	{'D','E','F','O','G',' ','S','E','T','U','P',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{318,319},	// defog setup
	{0},
#endif
};

// defog menu
static ROMDATA WORD DefogSens[][MenuNameCol]			= {{'S','T','R','E','N','G','T','H',' ',' ',' ',' ',' ',' '},{287,288}};
static ROMDATA WORD DefogThld[][MenuNameCol]			= {{'T','H','R','E','S','H','O','L','D',' ',' ',' ',' ',' '},{324}};
static ROMDATA WORD DefogAutoLevel[][MenuNameCol]			= {{'A','U','T','O',' ','L','E','V','E','L',' ',' ',' ',' '},{'A','U','T','O',' ','L','E','V','E','L'}};
static ROMDATA WORD DWDRAutoLevel[][MenuNameCol]			= {{'A','U','T','O',' ','L','E','V','E','L',' ',' ',' ',' '},{'A','U','T','O',' ','L','E','V','E','L'}};
#endif

#if defined(__USE_MDIN_i500__)		// MDIN-i500
static ROMDATA WORD DefogBright[][MenuNameCol]			= {{'D','E','F','O','G',' ','B','R','I','G','H','T',' ',' '},{318,319,305,306}};
#endif

// defog menu item
#if defined(__USE_MDIN_i500__)		// MDIN-i500
static ROMDATA WORD DefogSensItem[][MenuItemCol]	= {
	// eng
	{'1',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	{'2',' ',' ',' ',' ',' ',' ',' ',' ',' '},
 	{'3',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	{'4',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	{'5',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{'1'},
	{'2'},
	{'3'},
	{'4'},
	{'5'},
};
#endif

static ROMDATA WORD DefogDwdrALItem[][MenuItemCol]	= {
	// eng
	{'H','I','G','H',' ',' ',' ',' ',' ',' '},
	{'M','I','D',' ',' ',' ',' ',' ',' ',' '},
	{'L','O','W',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{316},	// high
	{315},	// mid
	{314},	// low
};

#if defined(__USE_DEFOG_DWDR_ONE_MENU__)
static ROMDATA WORD DefogDwdrSSItem[][MenuItemCol]	= {
	// eng
	{'O','F','F',' ',' ',' ',' ',' ',' ',' '},
	{'O','N',' ',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{284},
	{285},
};
// defog menu info
static ROMDATA OSD_MENU_INFO DefogDwdrMenuInfo[] = {
	// menu,				attb,		Item,					init,		max,							title
#if defined(__USE_MDIN_i500__)		// MDIN-i500
	{(PWORD)DefogDwdrSens,	MENU_ITEM,	(PWORD)DefogDwdrSensItem,	3,		GetArrayMax(DefogDwdrSensItem)/2,(PWORD)DefogDwdrMenuTitle	},
	{(PWORD)DefogBright,	MENU_VALUE,	NULL,						0,		20,								(PWORD)DefogDwdrMenuTitle	},
	{(PWORD)DefogDwdrSat,	MENU_SKIP,	NULL,						0,		16,								(PWORD)DefogDwdrMenuTitle	},
	{(PWORD)DefogDwdrLocal,	MENU_SKIP,	NULL,						8,		16,								(PWORD)DefogDwdrMenuTitle	},
	{(PWORD)DefogDwdrSatSync,	MENU_SKIP,	(PWORD)DefogDwdrSSItem,	0,		GetArrayMax(DefogDwdrSSItem)/2,	(PWORD)DefogDwdrMenuTitle	},
#else								// MDIN-i51X (i510, i540, i550)
	{(PWORD)DefogDwdrSens,	MENU_VALUE,	NULL,						0,		16,								(PWORD)DefogDwdrMenuTitle	},
	{(PWORD)DefogDwdrThld,	MENU_VALUE,	NULL,						0,		3,								(PWORD)DefogDwdrMenuTitle	},
	{(PWORD)DefogDwdrSat,	MENU_VALUE,	NULL,						0,		16,								(PWORD)DefogDwdrMenuTitle	},
	{(PWORD)DefogDwdrLocal,	MENU_VALUE,	NULL,						8,		16,								(PWORD)DefogDwdrMenuTitle	},
	{(PWORD)DefogDwdrSatSync,	MENU_ITEM,	(PWORD)DefogDwdrSSItem,	0,		GetArrayMax(DefogDwdrSSItem)/2,	(PWORD)DefogDwdrMenuTitle	},
#endif
	{(PWORD)RetMenu,		MENU_EXIT,	(PWORD)BlankItem,			0,		GetArrayMax(BlankItem)/2,		(PWORD)DefogDwdrMenuTitle	},
};
#else
// defog menu info
static ROMDATA OSD_MENU_INFO DefogMenuInfo[] = {
	// menu,				attb,		Item,					init,	max,							title
#if defined(__USE_MDIN_i500__)		// MDIN-i500
	{(PWORD)DefogSens,		MENU_ITEM,	(PWORD)DefogSensItem,	3,		GetArrayMax(DefogSensItem)/2,	(PWORD)DefogMenuTitle	},
	{(PWORD)DefogBright,	MENU_VALUE,	NULL,					0,		20,								(PWORD)DefogMenuTitle	},
#else								// MDIN-i51X (i510, i540, i550)
	{(PWORD)DefogSens,		MENU_VALUE,	NULL,					0,		16,								(PWORD)DefogMenuTitle	},
	{(PWORD)DefogThld,		MENU_VALUE,	NULL,					0,		3,								(PWORD)DefogMenuTitle	},
	{(PWORD)DefogAutoLevel,	MENU_ITEM,	(PWORD)DefogDwdrALItem,	2,		GetArrayMax(DefogDwdrALItem)/2,(PWORD)DefogMenuTitle	},
#endif
	{(PWORD)RetMenu,		MENU_EXIT,	(PWORD)BlankItem,		0,		GetArrayMax(BlankItem)/2,		(PWORD)DefogMenuTitle	},
};

//--------------------------------------------------------------------------------------------------------------------------
// 8-3-1.Special	- D-WDR
//--------------------------------------------------------------------------------------------------------------------------
// d-wdr menu title
static ROMDATA WORD DWDRMenuTitle[][MenuTitleCol]	= {
	// eng
	{'D','W','D','R',' ','S','E','T','U','P',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{270,271,346,347},	// dwdr setup
	{0},
};

// d-wdr menu
static ROMDATA WORD DWDRSens[][MenuNameCol]			= {{'S','T','R','E','N','G','T','H',' ',' ',' ',' ',' ',' '},{287,288}};
static ROMDATA WORD DWDRSat[][MenuNameCol]				= {{'S','A','T','U','R','A','T','I','O','N',' ',' ',' ',' '},{297,436,437,306}};
static ROMDATA WORD DWDRLocal[][MenuNameCol]			= {{'L','O','C','A','L',' ','R','A','T','I','O',' ',' ',' '},{'L','O','C','A','L',' ','R','A','T','I','O',' ',' ',' '}};
static ROMDATA WORD DWDRSatSync[][MenuNameCol]			= {{'S','A','T','.',' ','S','Y','N','C',' ',' ',' ',' ',' '},{'S','A','T','.',' ','S','Y','N','C',' ',' ',' ',' ',' '}};

// d-wdr menu item
static ROMDATA WORD DWDRSSItem[][MenuItemCol]	= {
	// eng
	{'O','F','F',' ',' ',' ',' ',' ',' ',' '},
	{'O','N',' ',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{284},	// off
	{285},	// on
};

// d-wdr menu info
static ROMDATA OSD_MENU_INFO DWDRMenuInfo[] = {
	// menu,				attb,		Item,					init,	max,						title
	{(PWORD)DWDRSens,		MENU_VALUE,	NULL,					0,		16,							(PWORD)DWDRMenuTitle},
	{(PWORD)DWDRSat,		MENU_VALUE,	NULL,					0,		16,							(PWORD)DWDRMenuTitle},
	{(PWORD)DWDRLocal,		MENU_VALUE,	NULL,					8,		16,							(PWORD)DWDRMenuTitle},
	{(PWORD)DWDRSatSync,	MENU_ITEM,	(PWORD)DWDRSSItem,	    0,		GetArrayMax(DWDRSSItem)/2,	(PWORD)DWDRMenuTitle},
	{(PWORD)DWDRAutoLevel,	MENU_ITEM,	(PWORD)DefogDwdrALItem,	2,		GetArrayMax(DefogDwdrALItem)/2,(PWORD)DWDRMenuTitle},	
	{(PWORD)RetMenu,		MENU_EXIT,	(PWORD)BlankItem,		0,		GetArrayMax(BlankItem)/2,	(PWORD)DWDRMenuTitle},
};
#endif


//--------------------------------------------------------------------------------------------------------------------------
// 8-6-1.Special	- Backlight(BLC)
//--------------------------------------------------------------------------------------------------------------------------

// backlight(blc) menu title
static ROMDATA WORD BLCMenuTitle[][MenuTitleCol]	= {
	// eng
	{'B','A','C','K','L','I','G','H','T',' ','-',' ','B','L','C',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{267,263,268,269},	// backlight - blc
	{0},
};

// backlight(blc) menu
static ROMDATA WORD BLCMode[][MenuNameCol]				= {{'B','L','C',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},{267,263,268,269,378,369}};
static ROMDATA WORD BLCDisplay[][MenuNameCol]			= {{'D','I','S','P','L','A','Y',' ',' ',' ',' ',' ',' ',' '},{376,377,390,391}};

// backlight(blc) menu item
static ROMDATA WORD BLCModeItem[][MenuItemCol]	= {
	// eng
	{'O','F','F',' ',' ',' ',' ',' ',' ',' '},
	{'O','N',' ',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{284},	// off
	{285},	// on
};

// backlight(blc) menu info
static ROMDATA OSD_MENU_INFO BLCMenuInfo[] = {
	// menu,				attb,		Item,					init,	max,						title
	{(PWORD)BLCMode,		MENU_ITEM,	(PWORD)BLCModeItem,		1,		GetArrayMax(BLCModeItem)/2,	(PWORD)BLCMenuTitle	},
	{(PWORD)SizePosition,	MENU_SUB,	(PWORD)SubItem,			0,		GetArrayMax(SubItem)/2,		(PWORD)BLCMenuTitle	},
	{(PWORD)BLCDisplay,		MENU_ITEM,	(PWORD)OnOffItem,		1,		GetArrayMax(OnOffItem)/2,	(PWORD)BLCMenuTitle	},
	{(PWORD)DefaultMenu,	MENU_FUNC,	(PWORD)BlankItem,		0,		GetArrayMax(BlankItem)/2,	(PWORD)BLCMenuTitle	},
	{(PWORD)RetMenu,		MENU_EXIT,	(PWORD)BlankItem,		0,		GetArrayMax(BlankItem)/2,	(PWORD)BLCMenuTitle	},
};

//--------------------------------------------------------------------------------------------------------------------------
// 8-6-1.Special	- Backlight(HSBLC)
//--------------------------------------------------------------------------------------------------------------------------

// backlight(hsblc) menu title
static ROMDATA WORD HSBLCMenuTitle[][MenuTitleCol]	= {
	// eng
	{'B','A','C','K','L','I','G','H','T',' ','-',' ','H','L','M',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{289,263,290,291},	// backlight - hlm
	{0},
};

// backlight(hsblc) menu
static ROMDATA WORD BlackMask[][MenuNameCol]			= {{'B','L','A','C','K',' ','M','A','S','K',' ',' ',' ',' '},{298,451,452,390,391}};

// backlight(hsblc) menu item
static ROMDATA WORD HSBLCAreaItem[][MenuItemCol]	= {
	// eng
	{'A','R','E','A',' ','1',' ',' ',' ',' '},
//	{'A','R','E','A',' ','2',' ',' ',' ',' '},	{'A','R','E','A',' ','3',' ',' ',' ',' '},	{'A','R','E','A',' ','4',' ',' ',' ',' '},
	// chn
	{376,377,0,'1'},	// area 1
};

// backlight(hsblc) menu info
static ROMDATA OSD_MENU_INFO HSBLCMenuInfo[] = {
	// menu,				attb,		Item,					init,	max,							title
	{(PWORD)AreaMenu,		MENU_SKIP,	(PWORD)HSBLCAreaItem,	0,		GetArrayMax(HSBLCAreaItem)/2,	(PWORD)HSBLCMenuTitle	},
	{(PWORD)AreaDisplay,	MENU_ITEM,	(PWORD)OnOffItem,		1,		GetArrayMax(OnOffItem)/2,		(PWORD)HSBLCMenuTitle	},
	{(PWORD)SizePosition,	MENU_SUB,	(PWORD)SubItem,			0,		GetArrayMax(SubItem)/2,			(PWORD)HSBLCMenuTitle	},
	{(PWORD)LevelMenu,		MENU_VALUE,	NULL,					3,		20,								(PWORD)HSBLCMenuTitle	},
	{(PWORD)BlackMask,		MENU_ITEM,	(PWORD)OnOffItem,		1,		GetArrayMax(OnOffItem)/2,		(PWORD)HSBLCMenuTitle	},
	{(PWORD)DefaultMenu,	MENU_FUNC,	(PWORD)BlankItem,		0,		GetArrayMax(BlankItem)/2,		(PWORD)HSBLCMenuTitle	},
	{(PWORD)RetMenu,		MENU_EXIT,	(PWORD)BlankItem,		0,		GetArrayMax(BlankItem)/2,		(PWORD)HSBLCMenuTitle	},
};

//--------------------------------------------------------------------------------------------------------------------------
// 8-4-1.Special	- Motion Detect
//--------------------------------------------------------------------------------------------------------------------------

// md menu title
static ROMDATA WORD MDMenuTitle[][MenuTitleCol]	= {
	// eng
	{'M','O','T','I','O','N',' ','D','E','T','E','C','T',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{381,426,439,440},	// motion detect
	{0},
};

// md menu
static ROMDATA WORD MDAreaEnable[][MenuNameCol]			= {{' ','A','R','E','A',' ','E','N','A','B','L','E',' ',' '},{0,376,377,458,459}};
static ROMDATA WORD MDAreaDisplay[][MenuNameCol]		= {{' ','A','R','E','A',' ','D','I','S','P','L','A','Y',' '},{0,376,377,390,391}};
static ROMDATA WORD MDSizePosition[][MenuNameCol]		= {{' ','S','I','Z','E','/','P','O','S','I','T','I','O','N'},{0,456,457,47,381,382}};
static ROMDATA WORD Sensitivity[][MenuNameCol]			= {{'S','E','N','S','I','T','I','V','I','T','Y',' ',' ',' '},{439,440,287,288}};
static ROMDATA WORD MotionView[][MenuNameCol]			= {{'M','O','T','I','O','N',' ','V','I','E','W',' ',' ',' '},{381,426,390,391}};

// md menu item
static ROMDATA WORD MDAreaItem[][MenuItemCol]	= {
	// eng
	{'A','R','E','A',' ','1',' ',' ',' ',' '},
	{'A','R','E','A',' ','2',' ',' ',' ',' '},
	{'A','R','E','A',' ','3',' ',' ',' ',' '},
	{'A','R','E','A',' ','4',' ',' ',' ',' '},
	// chn
	{376,377,0,'1'},	// area 1
	{376,377,0,'2'},	// area 2
	{376,377,0,'3'},	// area 3
	{376,377,0,'4'},	// area 4
};

// md menu info
static ROMDATA OSD_MENU_INFO MDMenuInfo[] = {
	// menu,				attb,		Item,					init,	max,						title
	{(PWORD)AreaMenu,		MENU_ITEM,	(PWORD)MDAreaItem,		0,		GetArrayMax(MDAreaItem)/2,	(PWORD)MDMenuTitle	},
	{(PWORD)MDAreaEnable,	MENU_ITEM,	(PWORD)OnOffItem,		1,		GetArrayMax(OnOffItem)/2,	(PWORD)MDMenuTitle	},
	{(PWORD)MDAreaDisplay,	MENU_ITEM,	(PWORD)OnOffItem,		1,		GetArrayMax(OnOffItem)/2,	(PWORD)MDMenuTitle	},
	{(PWORD)MDSizePosition,	MENU_SUB,	(PWORD)SubItem,			0,		GetArrayMax(SubItem)/2,		(PWORD)MDMenuTitle	},
	{(PWORD)Sensitivity,	MENU_VALUE,	NULL,					20,		40,							(PWORD)MDMenuTitle	},
	{(PWORD)MotionView,		MENU_ITEM,	(PWORD)OnOffItem,		1,		GetArrayMax(OnOffItem)/2,	(PWORD)MDMenuTitle	},
	{(PWORD)DefaultMenu,	MENU_FUNC,	(PWORD)BlankItem,		0,		GetArrayMax(BlankItem)/2,	(PWORD)MDMenuTitle	},
	{(PWORD)RetMenu,		MENU_EXIT,	(PWORD)BlankItem,		0,		GetArrayMax(BlankItem)/2,	(PWORD)MDMenuTitle	},
};


//--------------------------------------------------------------------------------------------------------------------------
// 8-1-1.Special	- D-ZOOM
//--------------------------------------------------------------------------------------------------------------------------

// dzoom menu title
static ROMDATA WORD DZMenuTitle[][MenuTitleCol]	= {
	// eng
	{'D','-','Z','O','O','M',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{270,271,345,280},	// dzoom
	{0},
};

// dzoom menu
static ROMDATA WORD DZControl[][MenuNameCol]		= {{'Z','O','O','M',' ','C','O','N','T','R','O','L',' ',' '},{270,271,345,280,428,429}};
static ROMDATA WORD DZPIP[][MenuNameCol]			= {{'P','I','P',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},{450,315,450,378,369}};
static ROMDATA WORD DZPIPSize[][MenuNameCol]		= {{'P','I','P',' ','S','I','Z','E',' ',' ',' ',' ',' ',' '},{450,315,450,456,457}};
static ROMDATA WORD DZPIPPosi[][MenuNameCol]		= {{'P','I','P',' ','P','O','S','I','T','I','O','N',' ',' '},{450,315,450,381,382}};
static ROMDATA char DZSave[][MenuNameCol]			= {{'D','Z','O','O','M',' ','S','A','V','E',' ',' ',' ',' '},{'D','Z','O','O','M',' ','S','A','V','E'}};

// dzoom menu item
static ROMDATA WORD PIPSizeItem[][MenuItemCol]	= {	
	// eng
	{'1','/','4',' ',' ',' ',' ',' ',' ',' '},
	{'1','/','9',' ',' ',' ',' ',' ',' ',' '},
	{'1','/','1','6',' ',' ',' ',' ',' ',' '},
	{'1','/','2','5',' ',' ',' ',' ',' ',' '},
	// chn
	{'1','/','4'},
	{'1','/','9'},
	{'1','/','1','6'},
	{'1','/','2','5'},
};

// dzoom menu info
static ROMDATA OSD_MENU_INFO DZMenuInfo[] = {
	// menu,				attb,		Item,					init,	max,						title
	{(PWORD)DZControl,		MENU_SUB,	(PWORD)SubItem,			0,		GetArrayMax(SubItem)/2,		(PWORD)DZMenuTitle	},
	{(PWORD)DZPIP,			MENU_ITEM,	(PWORD)OnOffItem,		1,		GetArrayMax(OnOffItem)/2,	(PWORD)DZMenuTitle	},
	{(PWORD)DZPIPSize,		MENU_ITEM,	(PWORD)PIPSizeItem,		1,		GetArrayMax(PIPSizeItem)/2,	(PWORD)DZMenuTitle	},
	{(PWORD)DZPIPPosi,		MENU_SUB,	(PWORD)SubItem,			0,		GetArrayMax(SubItem)/2,		(PWORD)DZMenuTitle	},
#if (defined(__USE_AFZOOM_LENS__)||defined(__USE_2MOTOR_LENS__))
	{(PWORD)DZSave,			MENU_SKIP,	(PWORD)WaitOkItem,		0,		GetArrayMax(WaitOkItem)/2,	(PWORD)DZMenuTitle	},
#else
	{(PWORD)DZSave,			MENU_FUNC,	(PWORD)WaitOkItem,		0,		GetArrayMax(WaitOkItem)/2,	(PWORD)DZMenuTitle	},
#endif
	{(PWORD)DefaultMenu,	MENU_FUNC,	(PWORD)BlankItem,		0,		GetArrayMax(BlankItem)/2,	(PWORD)DZMenuTitle	},
	{(PWORD)RetMenu,		MENU_EXIT,	(PWORD)BlankItem,		0,		GetArrayMax(BlankItem)/2,	(PWORD)DZMenuTitle	},
};

//--------------------------------------------------------------------------------------------------------------------------
// 8-8-1.Special - Defect Pixel
//--------------------------------------------------------------------------------------------------------------------------

// dpc menu title
static ROMDATA WORD DPCMenuTitle[][MenuTitleCol]	= {
	// eng
	{'D','E','F','E','C','T',' ','P','I','X','E','L',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{441,442,334,443,268,269},	// static defect pixel correction
	{0},
};

// dpc menu
static ROMDATA WORD DPCProcess[][MenuNameCol]		= {{'S','T','A','T','I','C',' ','P','R','O','C','E','S','S'},{309,293,441,442,334,443,268,269}};
static ROMDATA WORD DPDShut[][MenuNameCol]		= {{'D','E','T','E','C','T',' ','S','H','U','T',' ','L','V'},{307,308,400,306,287,288,439,440}};
static ROMDATA WORD SDPCUpdate[][MenuNameCol]		= {{'S','D','P','C',' ','U','P','D','A','T','E',' ',' ',' '},{460,461,441,442,334,443,381,382}};
static ROMDATA WORD SDPCClear[][MenuNameCol]		= {{'S','D','P','C',' ','C','L','E','A','R',' ',' ',' ',' '},{464,465,441,442,334,443,381,382}};
static ROMDATA WORD DDPCAuto[][MenuNameCol]		= {{'D','D','P','C',' ','A','U','T','O',' ','P','A','R','A'},{'D','D','P','C',' ','A','U','T','O',' ','P','A','R','A'}};
static ROMDATA WORD DDPCTHHD1[][MenuNameCol]		= {{'D','D','P','C',' ','T','H','H','D','1',' ',' ',' ',' '},{'D','D','P','C',' ','T','H','H','D','1'}};
static ROMDATA WORD DDPCTHHD2[][MenuNameCol]		= {{'D','D','P','C',' ','T','H','H','D','2',' ',' ',' ',' '},{'D','D','P','C',' ','T','H','H','D','2'}};
static ROMDATA WORD DDPCSelMode[][MenuNameCol]		= {{'D','D','P','C',' ','S','E','L',' ','M','O','D','E',' '},{'D','D','P','C',' ','S','E','L',' ','M','O','D','E'}};
static ROMDATA WORD DPCDebugDisp[][MenuNameCol]	= {{'D','P','C',' ','D','E','B','U','G',' ','D','I','S','P'},{'D','P','C',' ','D','E','B','U','G',' ','D','I','S','P'}};

static ROMDATA WORD DPDShutlvItem[][MenuItemCol]	= {
	// eng
	{'D','E','F','A','U','L','T',' ',' ',' '},
	{'F','A','S','T','E','R',' ',' ',' ',' '},
	{'F','A','S','T','E','S','T',' ',' ',' '},
	// chn
	{404,405},	// normal
	{401,400},	// fast
	{402,400},	// v.fast
};

static ROMDATA WORD DDPCAutoPARAMItem[][MenuItemCol]	= {
	// eng
	{'P','W','R','-','0',' ',' ',' ',' ',' '},
	{'P','W','R','-','1',' ',' ',' ',' ',' '},
	{'P','W','R','-','2',' ',' ',' ',' ',' '},
	{'P','W','R','-','3',' ',' ',' ',' ',' '},
	{'P','W','R','-','4',' ',' ',' ',' ',' '},
	{'P','W','R','-','5',' ',' ',' ',' ',' '},
	{'F','I','X','E','D',' ',' ',' ',' ',' '},	
	// chn
	{'P','W','R','-','0'},		// pwr 0
	{'P','W','R','-','1'},		// pwr 1
	{'P','W','R','-','2'},		// pwr 2
	{'P','W','R','-','3'},		// pwr 3
	{'P','W','R','-','4'},		// pwr 4
	{'P','W','R','-','5'},		// pwr 5
	{'F','I','X','E','D'},		// fixed
};

static ROMDATA WORD DPCDebugDispItem[][MenuItemCol]	= {
	// eng
	{'O','F','F',' ',' ',' ',' ',' ',' ',' '},
	{'D','D','P','C',' ','P','W','R',' ',' '},
	{'S','D','P','C',' ',' ',' ',' ',' ',' '},
	// chn
	{'O','F','F'},	// off
	{'D','D','P','C',' ','P','W','R'},	// ddpc pwr
	{'S','D','P','C'},	// sdpc
};

// dpc menu info
static ROMDATA OSD_MENU_INFO DPCMenuInfo[] = {
	// menu,				attb,		Item,					init,	max,							title
#if defined(__USE_4K60_INOUT__) || defined(__PANORAMA_SENSOR_SETUP__) || defined(__USE_EXT2IPP__) || defined(__USE_NO__CMOS__)	
	{(PWORD)DPCProcess,		MENU_SKIP,	(PWORD)WaitOkItem,		0,		GetArrayMax(WaitOkItem)/2,		(PWORD)DPCMenuTitle	},
#else
	{(PWORD)DPCProcess,		MENU_FUNC,	(PWORD)WaitOkItem,		0,		GetArrayMax(WaitOkItem)/2,		(PWORD)DPCMenuTitle	},
#endif	
	{(PWORD)DPDShut,		MENU_ITEM,	(PWORD)DPDShutlvItem,	0,		GetArrayMax(DPDShutlvItem)/2,	(PWORD)DPCMenuTitle	},	
	{(PWORD)SDPCUpdate,		MENU_FUNC,	(PWORD)WaitOkItem,		0,		GetArrayMax(WaitOkItem)/2,		(PWORD)DPCMenuTitle	},
	{(PWORD)SDPCClear,		MENU_FUNC,	(PWORD)WaitOkItem,		0,		GetArrayMax(WaitOkItem)/2,		(PWORD)DPCMenuTitle	},	
	{(PWORD)DDPCAuto,		MENU_ITEM,	(PWORD)DDPCAutoPARAMItem,1,		GetArrayMax(DDPCAutoPARAMItem)/2,(PWORD)DPCMenuTitle},		
	{(PWORD)DDPCTHHD1,		MENU_VALUE,	NULL,					100,	240,							(PWORD)DPCMenuTitle	},
	{(PWORD)DDPCTHHD2,		MENU_VALUE,	NULL,					170,	240,							(PWORD)DPCMenuTitle	},
	{(PWORD)DDPCSelMode,	MENU_VALUE,	NULL,					0,		3,								(PWORD)DPCMenuTitle	},	
	{(PWORD)DPCDebugDisp,	MENU_ITEM,	(PWORD)DPCDebugDispItem,0,		GetArrayMax(DPCDebugDispItem)/2,(PWORD)DPCMenuTitle	},	
	{(PWORD)RetMenu,		MENU_EXIT,	(PWORD)BlankItem,		0,		GetArrayMax(BlankItem)/2,		(PWORD)DPCMenuTitle	},
};

//--------------------------------------------------------------------------------------------------------------------------
// 8-9-1.Special - Display Function
//--------------------------------------------------------------------------------------------------------------------------

// display function menu title
static ROMDATA WORD DispFuncMenuTitle[][MenuTitleCol]	= {
	// eng
	{'D','I','S','P','L','A','Y',' ','F','U','N','C','T','I','O','N',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{338,334,428,429},	// display function
	{0},
};

// display function menu
static ROMDATA WORD Freeze[][MenuNameCol]			= {{'F','R','E','E','Z','E',' ',' ',' ',' ',' ',' ',' ',' '},{462,463,450,451}};
static ROMDATA WORD Mirror[][MenuNameCol]			= {{'M','I','R','R','O','R',' ',' ',' ',' ',' ',' ',' ',' '},{260,334}};
static ROMDATA WORD Rotation[][MenuNameCol]		= {{'R','O','T','A','T','I','O','N',' ',' ',' ',' ',' ',' '},{'R','O','T','A','T','I','O','N'}};
static ROMDATA WORD ImgEffect[][MenuNameCol]		= {{'I','M','A','G','E',' ','E','F','F','E','C','T',' ',' '},{338,334,389,330}};

static ROMDATA WORD PicStyle[][MenuNameCol]		= {{'P','I','C','T','U','R','E',' ','S','T','Y','L','E',' '},{'P','I','C','T','U','R','E',' ','S','T','Y','L','E',' '}};
static ROMDATA WORD PicStyleCon[][MenuNameCol]	= {{'P','I','C',' ','C','O','N','T','R','A','S','T',' ',' '},{'P','I','C',' ','C','O','N','T','R','A','S','T',' ',' '}};
static ROMDATA WORD PicStyleSat[][MenuNameCol]	= {{'P','I','C',' ','S','A','T','U','R','A','T','I','O','N'},{'P','I','C',' ','S','A','T','U','R','A','T','I','O','N'}};
static ROMDATA WORD PicStyleEE[][MenuNameCol]	= {{'P','I','C',' ','E','D','G','E',' ',' ',' ',' ',' ',' '},{'P','I','C',' ','E','D','G','E',' ',' ',' ',' ',' ',' '}};

// display function menu item
static ROMDATA WORD MirrorItem[][MenuItemCol]	= {
	// eng
	{'O','F','F',' ',' ',' ',' ',' ',' ',' '},
	{'M','I','R','R','O','R',' ',' ',' ',' '},
	{'V','-','F','L','I','P',' ',' ',' ',' '},
	{'B','O','T','H','(','H','/','V',')',' '},
	// chn
	{284},					// off
	{342,265},				// mirror
	{343,344},				// v-flip
	{342,265,43,343,344},	// both(h/v)
};

static ROMDATA WORD ImgEffectItem[][MenuItemCol]	= {
	// eng
	{'O','F','F',' ',' ',' ',' ',' ',' ',' '},
	{'N','E','G','A','T','I','V','E',' ',' '},
	{'G','R','E','Y',' ','M','O','D','E',' '},
	{'R','E','D','D','I','S','H','-','1',' '},
	{'R','E','D','D','I','S','H','-','2',' '},
	{'R','E','D','D','I','S','H','-','3',' '},
	{'R','E','D','D','I','S','H','-','4',' '},
	{'B','L','U','I','S','H','-','1',' ',' '},
	{'B','L','U','I','S','H','-','2',' ',' '},
	{'B','L','U','I','S','H','-','3',' ',' '},
	{'B','L','U','I','S','H','-','4',' ',' '},
	{'G','R','E','E','N','I','S','H','-','1'},
	{'G','R','E','E','N','I','S','H','-','2'},
	{'G','R','E','E','N','I','S','H','-','3'},
	{'G','R','E','E','N','I','S','H','-','4'},
	// chn
	{284},					// off
	{449,334},				// negative
	{363,306},				// grey mode
	{327,352,297,0,'1'},	// reddish 1
	{327,352,297,0,'2'},	// reddish 2
	{327,352,297,0,'3'},	// reddish 3
	{327,352,297,0,'4'},	// reddish 4
	{327,353,297,0,'1'},	// bluish 1
	{327,353,297,0,'2'},	// bluish 2
	{327,353,297,0,'3'},	// bluish 3
	{327,353,297,0,'4'},	// bluish 4
	{327,351,297,0,'1'},	// greenish 1
	{327,351,297,0,'2'},	// greenish 2
	{327,351,297,0,'3'},	// greenish 3
	{327,351,297,0,'4'},	// greenish 4
};

static ROMDATA WORD RotationItem[][MenuItemCol]	= {
	// eng
	{'O','F','F',' ',' ',' ',' ',' ',' ',' '},
	{'R','O','T','_','L',' ','F','U','L','L'},
	{'R','O','T','_','L',' ','1',':','1',' '},
	{'R','O','T','_','R',' ','F','U','L','L'},
	{'R','O','T','_','L',' ','1',':','1',' '},
	// chn
	{284},						// off
	{359,360},					// left
	{359,360,' ','1',':','1'},	// left 1:1
	{361,360},					// right
	{361,360,' ','1',':','1'},	// right 1:1
};

static ROMDATA WORD PSItem[][MenuItemCol] = {
	// eng
	{'O','F','F',' ',' ',' ',' ',' ',' ',' '},
	{'S','T','A','N','D','A','R','D',' ',' '},
	{'V','I','V','I','D',' ',' ',' ',' ',' '},
	{'C','L','E','A','R',' ',' ',' ',' ',' '},
	{'V','I','V','I','D',' ','C','L','R','>'},
	{'N','E','U','T','R','A','L',' ',' ',' '},
	// chn
	{'O','F','F',' ',' ',' ',' ',' ',' ',' '},
	{'S','T','A','N','D','A','R','D',' ',' '},
	{'V','I','V','I','D',' ',' ',' ',' ',' '},
	{'C','L','E','A','R',' ',' ',' ',' ',' '},
	{'V','I','V','I','D',' ','C','L','R','>'},
	{'N','E','U','T','R','A','L',' ',' ',' '},
};

// display function menu info
static ROMDATA OSD_MENU_INFO DispFuncMenuInfo[] = {
	// menu,			attb,		Item,					init,	max,							title
	{(PWORD)Freeze,		MENU_ITEM,	(PWORD)OnOffItem,		0,		GetArrayMax(OnOffItem)/2,		(PWORD)DispFuncMenuTitle	},
	{(PWORD)Mirror,		MENU_ITEM,	(PWORD)MirrorItem,		0,		GetArrayMax(MirrorItem)/2,		(PWORD)DispFuncMenuTitle	},
	{(PWORD)ImgEffect,	MENU_ITEM,	(PWORD)ImgEffectItem,	0,		GetArrayMax(ImgEffectItem)/2,	(PWORD)DispFuncMenuTitle	},
#if defined(__USE_MDIN_i500__) 		// MDIN-i500
	{(PWORD)Rotation,	MENU_SKIP,	(PWORD)RotationItem,	0,		GetArrayMax(RotationItem)/2,	(PWORD)DispFuncMenuTitle	},
	{(PWORD)PicStyle,	MENU_SKIP,	(PWORD)PSItem,		    0,		GetArrayMax(PSItem)/2,			(PWORD)DispFuncMenuTitle	},	
#else								// MDIN-i51X (i510, i540, i550)
#if (defined(__USE_CMOS_IMX334__) && !defined(__USE_ISP_SCLK_OUT__))
	{(PWORD)Rotation,	MENU_SKIP,	(PWORD)RotationItem,	0,		GetArrayMax(RotationItem)/2,	(PWORD)DispFuncMenuTitle	},
#else
	{(PWORD)Rotation,	MENU_ITEM,	(PWORD)RotationItem,	0,		GetArrayMax(RotationItem)/2,	(PWORD)DispFuncMenuTitle	},
#endif
	{(PWORD)PicStyle,	MENU_ITEM,	(PWORD)PSItem,		    1,		GetArrayMax(PSItem)/2,			(PWORD)DispFuncMenuTitle	},	
	{(PWORD)PicStyleCon,MENU_VALUE,	 NULL,	                3,		6,	                        	(PWORD)DispFuncMenuTitle	},
	{(PWORD)PicStyleSat,MENU_VALUE,	 NULL,	                3,		6,	                        	(PWORD)DispFuncMenuTitle	},
	{(PWORD)PicStyleEE, MENU_VALUE,	 NULL,	                3,		6,	                        	(PWORD)DispFuncMenuTitle	},	
#endif
	{(PWORD)RetMenu,	MENU_EXIT,	(PWORD)BlankItem,		0,		GetArrayMax(BlankItem)/2,		(PWORD)DispFuncMenuTitle	},
};

//--------------------------------------------------------------------------------------------------------------------------
// 9-1.Setup
//--------------------------------------------------------------------------------------------------------------------------

// setup menu title
static ROMDATA WORD SetupMenuTitle[][MenuTitleCol]	= {
	// eng
	{'S','E','T','U','P',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{395,382},	// setup
	{0},
};

// setup menu
static ROMDATA WORD CamTitle[][MenuNameCol]		= {{'C','A','M',' ','T','I','T','L','E',' ',' ',' ',' ',' '},{333,334,335,336,337}};
static ROMDATA WORD NtscPal[][MenuNameCol]			= {{'N','T','S','C','/','P','A','L',' ',' ',' ',' ',' ',' '},{365,283,291,369}};
static ROMDATA WORD RS485Menu[][MenuNameCol]		= {{'R','S','4','8','5',' ',' ',' ',' ',' ',' ',' ',' ',' '},{385,386,40,82,83,52,56,53,41}};
static ROMDATA WORD LangMenu[][MenuNameCol]		= {{'L','A','N','G','U','A','G','E',' ',' ',' ',' ',' ',' '},{392,393}};
static ROMDATA WORD MenuColor[][MenuNameCol]		= {{'M','E','N','U',' ','C','O','L','O','R',' ',' ',' ',' '},{258,259,466,297}};
static ROMDATA WORD FactoryRst[][MenuNameCol]		= {{'F','A','C','T','O','R','Y',' ','R','E','S','E','T',' '},{396,397,394,381}};
static ROMDATA WORD SysInfo[][MenuNameCol]			= {{'S','Y','S','T','E','M',' ','I','N','F','O',' ',' ',' '},{468,469,332,331}};
static ROMDATA WORD MenuPosi[][MenuNameCol]		= {{'M','E','N','U',' ','P','O','S','I','T','I','O','N',' '},{258,259,381,382}};
static ROMDATA WORD OutFrmat[][MenuNameCol]		= {{'O','U','T','P','U','T',' ','F','O','R','M','A','T',' '},{413,414,365,283,378,369}};
static ROMDATA WORD LEDPWMLow[][MenuNameCol]		= {{'L','E','D',' ','P','W','M','(','L','O','W',')',' ',' '},{'L','E','D',' ','P','W','M','(','L','O','W',')',' ',' '}};
static ROMDATA WORD LEDPWMHigh[][MenuNameCol]		= {{'L','E','D',' ','P','W','M','(','H','I','G','H',')',' '},{'L','E','D',' ','P','W','M','(','H','I','G','H',')',' '}};

// setup menu item
static ROMDATA WORD NtscPalItem[][MenuItemCol]	= {
	// eng
	{'N','T','S','C',' ',' ',' ',' ',' ',' '},
	{'P','A','L',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{78,84,83,67},	// ntsc
	{80,65,76},		// pal
};

static ROMDATA WORD LangItem[][MenuItemCol]	= {
	// eng
	{'E','N','G',' ',' ',' ',' ',' ',' ',' '},
	{'C','H','N',' ',' ',' ',' ',' ',' ',' '},
//	{'J','P','N',' ',' ',' ',' ',' ',' ',' '},
//	{'K','O','R',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{474,392},		// english
	{473,392},		// chinese
//	{274,392},		// japanese
//	{475,476,392},	// korean
};

static ROMDATA WORD MenuPosiItem[][MenuItemCol] = {
	// eng
	{'D','E','F','A','U','L','T',' ',' ',' '},
	{'T','O','P','-','L','E','F','T',' ',' '},
	{'T','O','P','-','R','I','G','H','T',' '},
	{'B','O','T','-','R','I','G','H','T',' '},
	{'B','O','T','-','L','E','F','T',' ',' '},
	// chn
	{394,381},	// default
	{359,379},	// top left
	{361,379},	// top right
	{361,380},	// bot right
	{359,380},	// bot left
};

static ROMDATA WORD OutFrmtItem[][MenuItemCol] = {
	// eng
	{'7','2','0','p','6','0',' ',' ',' ','>'},
#if defined(__USE_59Hz_OUTPUT__)
	{'7','2','0','p','5','9',' ',' ',' ','>'},
#endif
	{'7','2','0','p','5','0',' ',' ',' ','>'},
	{'7','2','0','p','3','0',' ',' ',' ','>'},
	{'7','2','0','p','2','5',' ',' ',' ','>'},
	{'7','2','0','p','2','4',' ',' ',' ','>'}, 			// not work in gv7600(SEP422)
	{'1','0','8','0','i','6','0',' ',' ','>'},
#if defined(__USE_59Hz_OUTPUT__)
	{'1','0','8','0','i','5','9',' ',' ','>'},
#endif
	{'1','0','8','0','i','5','0',' ',' ','>'},
	{'1','0','8','0','p','6','0',' ',' ','>'},
#if defined(__USE_59Hz_OUTPUT__)
	{'1','0','8','0','p','5','9',' ',' ','>'},
#endif
	{'1','0','8','0','p','5','0',' ',' ','>'},
	{'1','0','8','0','p','3','0',' ',' ','>'},
#if defined(__USE_59Hz_OUTPUT__)
	{'1','0','8','0','p','2','9',' ',' ','>'},
#endif
	{'1','0','8','0','p','2','5',' ',' ','>'},
	{'1','0','8','0','p','2','4',' ',' ','>'},
#if defined(__USE_MDIN_i540__) || defined(__USE_MDIN_i550__) 	// i540, i550
	{'4','K','3','8','4','0','H','3','0','>'},
#if defined(__USE_59Hz_OUTPUT__)
  {'4','K','3','8','4','0','H','2','9','>'},
#endif
	{'4','K','3','8','4','0','H','2','5','>'},
	{'4','K','3','8','4','0','H','2','4','>'},
	{'4','K','3','8','4','0','H','1','5','>'},
	{'4','K','3','8','4','0','H','1','2','>'},
	{'4','K','4','0','9','6','H','3','0','>'},
	{'4','K','4','0','9','6','H','2','5','>'},
	{'4','K','4','0','9','6','H','2','4','>'},
	{'4','M','1','4','4','0','p','3','0','>'},
	{'4','M','1','4','4','0','p','2','5','>'},
#if defined(__USE_4K60_INOUT__)
	{'4','K','3','8','4','0','H','6','0','>'},
	{'4','K','3','8','4','0','H','5','0','>'},
#endif
#endif
	// chn
	{'7','2','0','p','6','0',' ',' ',' ','>'},
#if defined(__USE_59Hz_OUTPUT__)
	{'7','2','0','p','5','9',' ',' ',' ','>'},
#endif
	{'7','2','0','p','5','0',' ',' ',' ','>'},
	{'7','2','0','p','3','0',' ',' ',' ','>'},
	{'7','2','0','p','2','5',' ',' ',' ','>'},
	{'7','2','0','p','2','4',' ',' ',' ','>'}, 			// not work in gv7600(SEP422)
	{'1','0','8','0','i','6','0',' ',' ','>'},
#if defined(__USE_59Hz_OUTPUT__)
	{'1','0','8','0','i','5','9',' ',' ','>'},
#endif
	{'1','0','8','0','i','5','0',' ',' ','>'},
	{'1','0','8','0','p','6','0',' ',' ','>'},
#if defined(__USE_59Hz_OUTPUT__)
	{'1','0','8','0','p','5','9',' ',' ','>'},
#endif
	{'1','0','8','0','p','5','0',' ',' ','>'},
	{'1','0','8','0','p','3','0',' ',' ','>'},
#if defined(__USE_59Hz_OUTPUT__)
	{'1','0','8','0','p','2','9',' ',' ','>'},
#endif
	{'1','0','8','0','p','2','5',' ',' ','>'},
	{'1','0','8','0','p','2','4',' ',' ','>'},
#if defined(__USE_MDIN_i540__) || defined(__USE_MDIN_i550__) 	// i540, i550
	{'4','K','3','8','4','0','H','3','0','>'},
#if defined(__USE_59Hz_OUTPUT__)
  {'4','K','3','8','4','0','H','2','9','>'},
#endif
	{'4','K','3','8','4','0','H','2','5','>'},
	{'4','K','3','8','4','0','H','2','4','>'},
	{'4','K','3','8','4','0','H','1','5','>'},
	{'4','K','3','8','4','0','H','1','2','>'},
	{'4','K','4','0','9','6','H','3','0','>'},
	{'4','K','4','0','9','6','H','2','5','>'},
	{'4','K','4','0','9','6','H','2','4','>'},
	{'4','M','1','4','4','0','p','3','0','>'},
	{'4','M','1','4','4','0','p','2','5','>'},
#if defined(__USE_4K60_INOUT__)
	{'4','K','3','8','4','0','H','6','0','>'},
	{'4','K','3','8','4','0','H','5','0','>'},
#endif
#endif
};

// setup menu info
static ROMDATA OSD_MENU_INFO SetupMenuInfo[] = {
	// menu,			attb,		Item,					init,		max,							title
	{(PWORD)CamTitle,	MENU_SUB,	(PWORD)OnOffSub,		0,			GetArrayMax(OnOffSub)/2,		(PWORD)SetupMenuTitle	},
	{(PWORD)NtscPal,	MENU_ITEM,	(PWORD)NtscPalItem,		0,			GetArrayMax(NtscPalItem)/2,		(PWORD)SetupMenuTitle	},
	{(PWORD)RS485Menu,	(MENU_SUB|MENU_SKIP),	(PWORD)SubItem,		0,	GetArrayMax(SubItem)/2,			(PWORD)SetupMenuTitle	},
	{(PWORD)LangMenu,	MENU_ITEM,	(PWORD)LangItem,		0,			GetArrayMax(LangItem)/2,		(PWORD)SetupMenuTitle	},
	{(PWORD)MenuColor,	MENU_SUB,	(PWORD)SubItem,			0,			GetArrayMax(SubItem)/2,			(PWORD)SetupMenuTitle	},
	{(PWORD)FactoryRst,	MENU_SUB,	(PWORD)SubItem,			0,			GetArrayMax(SubItem)/2,			(PWORD)SetupMenuTitle	},
	{(PWORD)SysInfo,	MENU_SUB,	(PWORD)SubItem,			0,			GetArrayMax(SubItem)/2,			(PWORD)SetupMenuTitle	},
	{(PWORD)MenuPosi,	MENU_ITEM,	(PWORD)MenuPosiItem,	0,			GetArrayMax(MenuPosiItem)/2,	(PWORD)SetupMenuTitle	},
	{(PWORD)OutFrmat,	MENU_SUB,	(PWORD)OutFrmtItem,		0,			GetArrayMax(OutFrmtItem)/2,		(PWORD)SetupMenuTitle	},
#if defined(__USE_IR_LED_PWM__)
	{(PWORD)LEDPWMLow,	MENU_VALUE,	NULL,					5,			33,								(PWORD)SetupMenuTitle	},
	{(PWORD)LEDPWMHigh,	MENU_VALUE,	NULL,					3,			33,								(PWORD)SetupMenuTitle	},
#endif
	{(PWORD)RetMenu,	MENU_EXIT,	(PWORD)BlankItem,		0,			GetArrayMax(BlankItem)/2,		(PWORD)SetupMenuTitle	},
};

//--------------------------------------------------------------------------------------------------------------------------
// 9-1-1.Setup - CAM Title
//--------------------------------------------------------------------------------------------------------------------------

// cam title menu title
static ROMDATA WORD CamTitleMenuTitle[][MenuTitleCol]	= {
	// eng
	{'C','A','M',' ','T','I','T','L','E',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{333,334,335,336,337},	// cam title
	{0},
};

// cam title menu
static ROMDATA WORD TitleMenu[][MenuNameCol]		= {{'T','I','T','L','E',' ',' ',' ',' ',' ',' ',' ',' ',' '},{336,337}};
static ROMDATA WORD TextColor[][MenuNameCol]		= {{'T','E','X','T',' ','C','O','L','O','R',' ',' ',' ',' '},{427,271,466,297}};

// cam title menu item
static WORD CamTitleText[][MenuItemCol]	= {
	// eng
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{0,0,0,0,0,0,0,0,0,0},
};

static BYTE OSDTextDigit = 0;       
  
// cam title menu info
static ROMDATA OSD_MENU_INFO CamTitleMenuInfo[] = {
	// menu,			attb,		Item,					init,		max,							title
	{(PWORD)TitleMenu,	MENU_CTITLE,(PWORD)CamTitleText,	0,			GetArrayMax(CamTitleText)/2,	(PWORD)CamTitleMenuTitle	},
	{(PWORD)TextColor,	MENU_ITEM,	(PWORD)ColorItem,		OSD_WHITE,	GetArrayMax(ColorItem)/2,		(PWORD)CamTitleMenuTitle	},
	{(PWORD)RetMenu,	MENU_EXIT,	(PWORD)BlankItem,		0,			GetArrayMax(BlankItem)/2,		(PWORD)CamTitleMenuTitle	},
};

//--------------------------------------------------------------------------------------------------------------------------
// 9-2-1.Setup - RS485
//--------------------------------------------------------------------------------------------------------------------------

// rs485 menu title
static ROMDATA WORD RS485MenuTitle[][MenuTitleCol]	= {
	// eng
	{'R','S','4','8','5',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{385,386,40,82,83,52,56,53,41},	// rs485
	{0},
};

// rs485 menu
static ROMDATA WORD CamID[][MenuNameCol]			= {{'C','A','M',' ','I','D',' ',' ',' ',' ',' ',' ',' ',' '},{333,334,335,410,411,412}};
static ROMDATA WORD IDDisplay[][MenuNameCol]		= {{'I','D',' ','D','I','S','P','L','A','Y',' ',' ',' ',' '},{390,391,478,387}};
static ROMDATA WORD BaudRate[][MenuNameCol]		= {{'B','A','U','D',' ','R','A','T','E',' ',' ',' ',' ',' '},{388,389,368}};

// rs485 menu item
static ROMDATA WORD BaudRateItem[][MenuItemCol]	= {
	// eng
	{'2','4','0','0',' ',' ',' ',' ',' ',' '},
	{'4','8','0','0',' ',' ',' ',' ',' ',' '},
	{'9','6','0','0',' ',' ',' ',' ',' ',' '},
	{'1','9','2','0','0',' ',' ',' ',' ',' '},
	{'3','8','4','0','0',' ',' ',' ',' ',' '},
	// chn
	{'2','4','0','0',' ',' ',' ',' ',' ',' '},
	{'4','8','0','0',' ',' ',' ',' ',' ',' '},
	{'9','6','0','0',' ',' ',' ',' ',' ',' '},
	{'1','9','2','0','0',' ',' ',' ',' ',' '},
	{'3','8','4','0','0',' ',' ',' ',' ',' '},
};

// rs485 menu info
static ROMDATA OSD_MENU_INFO RS485MenuInfo[] = {
	// menu,			attb,		Item,					init,	max,							title
	{(PWORD)CamID,		MENU_VALUE,	NULL,					1,		255,							(PWORD)RS485MenuTitle	},
	{(PWORD)IDDisplay,	MENU_ITEM,	(PWORD)OnOffItem,		0,		GetArrayMax(OnOffItem)/2,		(PWORD)RS485MenuTitle	},
	{(PWORD)BaudRate,	MENU_ITEM,	(PWORD)BaudRateItem,	2,		GetArrayMax(BaudRateItem)/2,	(PWORD)RS485MenuTitle	},
	{(PWORD)RetMenu,	MENU_EXIT,	(PWORD)BlankItem,		0,		GetArrayMax(BlankItem)/2,		(PWORD)RS485MenuTitle	},
};

//--------------------------------------------------------------------------------------------------------------------------
// 9-5-1.Setup - Menu Color
//--------------------------------------------------------------------------------------------------------------------------

// osd color menu title
static ROMDATA WORD MenuColorMenuTitle[][MenuTitleCol]	= {
	// eng
	{'M','E','N','U',' ','C','O','L','O','R',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{258,259,466,297},	// menu color
	{0},
};

// osd color menu
static ROMDATA WORD MenuTextColor[][MenuNameCol]		= {{'T','E','X','T',' ','C','O','L','O','R',' ',' ',' ',' '},{427,271,466,297}};
static ROMDATA WORD MenuTextColorH[][MenuNameCol]		= {{'T','E','X','T','(','H',')',' ','C','O','L','O','R',' '},{263,410,427,271,466,297}};
static ROMDATA WORD MenuBGColor[][MenuNameCol]			= {{'B','/','G',' ','C','O','L','O','R',' ',' ',' ',' ',' '},{267,467,466,297}};
static ROMDATA WORD MenuBGColorH[][MenuNameCol]		= {{'B','/','G','(','H',')',' ','C','O','L','O','R',' ',' '},{263,410,267,467,466,297}};

// osd color menu info
static ROMDATA OSD_MENU_INFO MenuColorMenuInfo[] = {
	// menu,				attb,		Item,				init,			max,						title
	{(PWORD)MenuTextColor,	MENU_ITEM,	(PWORD)ColorItem,	OSD_WHITE,		GetArrayMax(ColorItem)/2,	(PWORD)MenuColorMenuTitle	},
	{(PWORD)MenuTextColorH,	MENU_ITEM,	(PWORD)ColorItem,	OSD_YELLOW,		GetArrayMax(ColorItem)/2,	(PWORD)MenuColorMenuTitle	},
	{(PWORD)MenuBGColor,	MENU_ITEM,	(PWORD)ColorItem,	OSD_NOCOLOR,	GetArrayMax(ColorItem)/2,	(PWORD)MenuColorMenuTitle	},
	{(PWORD)MenuBGColorH,	MENU_ITEM,	(PWORD)ColorItem,	OSD_BLACK_OP,	GetArrayMax(ColorItem)/2,	(PWORD)MenuColorMenuTitle	},
	{(PWORD)RetMenu,		MENU_EXIT,	(PWORD)BlankItem,	0,				GetArrayMax(BlankItem)/2,	(PWORD)MenuColorMenuTitle	},
};

//--------------------------------------------------------------------------------------------------------------------------
// 9-6-1.Setup - Factory Reset
//--------------------------------------------------------------------------------------------------------------------------

// factory reset menu title
static ROMDATA WORD FResetMenuTitle[][MenuTitleCol]	= {
	// eng
	{'F','A','C','T','O','R','Y',' ','R','E','S','E','T',' ','?',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{396,397,394,381,63},	// factory reset ?
	{0},
};

// factory reset menu
static ROMDATA WORD FResetNo[][MenuNameCol]		= {{' ','N','O',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','>'},{489,394,381}};
static ROMDATA WORD FResetYes[][MenuNameCol]		= {{' ','Y','E','S',' ',' ',' ',' ',' ',' ',' ',' ',' ','>'},{394,381}};

// factory reset menu info
static ROMDATA OSD_MENU_INFO FResetMenuInfo[] = {
	// menu,			attb,		Item,				init,	max,						title
	{(PWORD)FResetNo,	MENU_EXIT,	(PWORD)BlankItem,	0,		GetArrayMax(BlankItem)/2,	(PWORD)FResetMenuTitle	},
	{(PWORD)FResetYes,	MENU_FUNC,	(PWORD)BlankItem,	0,		GetArrayMax(BlankItem)/2,	(PWORD)FResetMenuTitle	},
};

//--------------------------------------------------------------------------------------------------------------------------
// 9-7-1.Setup - SYSTEM INFORMATION
//--------------------------------------------------------------------------------------------------------------------------

// sysinfo menu title
static ROMDATA WORD SysInfoMenuTitle[][MenuTitleCol]	= {
	// eng
	{'S','Y','S','T','E','M',' ','I','N','F','O','R','M','A','T','I','O','N',' ',' ',' ',' ',' ',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{468,469,332,331},	// system infomation
	{0},
};

// sysinfo menu
static ROMDATA WORD HWVer[][MenuNameCol]			= {{'H','/','W',' ','V','e','r',' ',' ',' ',' ',' ',' ',' '},{72,47,87,0,499,500}};
static ROMDATA WORD SWVer[][MenuNameCol]			= {{'S','/','W',' ','V','e','r',' ',' ',' ',' ',' ',' ',' '},{83,47,87,0,499,500}};
static ROMDATA WORD SWDate[][MenuNameCol]			= {{'S','/','W',' ','D','a','t','e',' ',' ',' ',' ',' ',' '},{83,47,87,0,501,502,274,503}};
static ROMDATA WORD SensorNo[][MenuNameCol]		= {{'S','E','N','S','O','R',' ',' ',' ',' ',' ',' ',' ',' '},{338,334,495,317,496}};
static ROMDATA WORD LensType[][MenuNameCol]		= {{'L','E','N','S',' ','T','Y','P','E',' ',' ',' ',' ',' '},{260,261,0,415,416}};
static ROMDATA WORD LensMaker[][MenuNameCol]		= {{'L','E','N','S',' ','M','A','K','E','R',' ',' ',' ',' '},{260,261,0,291,429,506}};

// sysinfo menu item
static ROMDATA WORD HWVerItem[][MenuItemCol]	= {
	// eng
	{'F','P','G','A',' ',' ',' ',' ',' ',' '},
	{'i','5','0','0',' ','E','D','K',' ',' '},
	{'i','5','0','0',' ','R','E','F',' ',' '},
	{'i','5','1','0',' ','E','D','K','1','0'},
	{'i','5','1','0',' ','R','E','F','1','0'},
	{'i','5','4','0',' ','E','D','K','1','0'},
	{'i','5','4','0',' ','R','E','F','1','0'},
	{'i','5','5','0',' ','E','D','K','1','0'},
	{'i','5','5','0',' ','R','E','F','1','0'},
	{'i','5','1','0',' ','+',' ','2','9','0'},
	{'i','5','1','0',' ','E','D','K','1','1'},
	{'i','5','1','0',' ','R','E','F','1','3'},
	{'i','5','4','0',' ','E','D','K','1','1'},
	{'i','5','4','0',' ','R','E','F','1','2'},
	{'i','5','5','0',' ','E','D','K','1','1'},
	{'i','5','5','0',' ','R','E','F','1','2'},
	{'i','5','4','0',' ','4','K','6','0',' '},
	{'i','5','5','0',' ','U','S','B',' ',' '},
	// chn
	{'F','P','G','A',' ',' ',' ',' ',' ',' '},
	{'i','5','0','0',' ','E','D','K',' ',' '},
	{'i','5','0','0',' ','R','E','F',' ',' '},
	{'i','5','1','0',' ','E','D','K','1','0'},
	{'i','5','1','0',' ','R','E','F','1','0'},
	{'i','5','4','0',' ','E','D','K','1','0'},
	{'i','5','4','0',' ','R','E','F','1','0'},
	{'i','5','5','0',' ','E','D','K','1','0'},
	{'i','5','5','0',' ','R','E','F','1','0'},
	{'i','5','1','0',' ','+',' ','2','9','0'},
	{'i','5','1','0',' ','E','D','K','1','1'},
	{'i','5','1','0',' ','R','E','F','1','3'},
	{'i','5','4','0',' ','E','D','K','1','1'},
	{'i','5','4','0',' ','R','E','F','1','2'},
	{'i','5','5','0',' ','E','D','K','1','1'},
	{'i','5','5','0',' ','R','E','F','1','2'},
	{'i','5','4','0',' ','4','K','6','0',' '},
	{'i','5','5','0',' ','U','S','B',' ',' '},
};

static ROMDATA WORD SensorNoItem[][MenuItemCol]	= {
	{'I','M','X','1','3','6',' ',' ',' ',' '},
	{'M','N','3','4','2','2','0',' ',' ',' '},
	{'I','M','X','2','3','6',' ',' ',' ',' '},
	{'I','M','X','1','2','4',' ',' ',' ',' '},
	{'I','M','X','2','2','2',' ',' ',' ',' '},
	{'I','M','X','1','8','5',' ',' ',' ',' '},
	{'I','M','X','2','3','8',' ',' ',' ',' '},
	{'I','M','X','1','7','4',' ',' ',' ',' '},
	{'A','R','0','3','3','1',' ',' ',' ',' '},
	{'M','T','9','P','0','3','1',' ',' ',' '},
	{'M','T','9','M','1','3','1',' ',' ',' '},
	{'M','N','3','4','0','4','1',' ',' ',' '},
	{'I','M','X','0','7','6',' ',' ',' ',' '},
	{'P','O','3','1','0','0','K',' ',' ',' '},
	{'P','S','1','2','1','0','K',' ',' ',' '},
	{'I','M','X','2','9','0',' ',' ',' ',' '},
	{'I','M','X','3','2','2',' ',' ',' ',' '},
	{'I','M','X','1','7','8',' ',' ',' ',' '},
	{'I','M','X','2','2','6',' ',' ',' ',' '},
	{'E','X','T','2',' ',' ',' ',' ',' ',' '},
	{'E','X','T','1',' ',' ',' ',' ',' ',' '},
	{'O','V','2','7','1','0',' ',' ',' ',' '},
	{'I','M','X','2','7','4',' ',' ',' ',' '},
	{'I','M','X','2','6','5',' ',' ',' ',' '},
	{'M','N','3','4','4','2','0',' ',' ',' '},
	{'I','M','X','3','2','6',' ',' ',' ',' '},
	{'I','M','X','2','5','3',' ',' ',' ',' '},
	{'P','S','1','4','0','0','K',' ',' ',' '},
	{'A','R','0','1','3','4',' ',' ',' ',' '},
	{'E','X','T','3',' ',' ',' ',' ',' ',' '},
	{'I','M','X','3','2','3',' ',' ',' ',' '},
	{'I','M','X','2','5','2',' ',' ',' ',' '},
	{'I','M','X','3','8','5',' ',' ',' ',' '},
	{'I','M','X','3','2','7',' ',' ',' ',' '},
	{'I','M','X','2','7','3',' ',' ',' ',' '},
	{'I','M','X','3','3','4',' ',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	
	// chn
	{'I','M','X','1','3','6',' ',' ',' ',' '},
	{'M','N','3','4','2','2','0',' ',' ',' '},
	{'I','M','X','2','3','6',' ',' ',' ',' '},
	{'I','M','X','1','2','4',' ',' ',' ',' '},
	{'I','M','X','2','2','2',' ',' ',' ',' '},
	{'I','M','X','1','8','5',' ',' ',' ',' '},
	{'I','M','X','2','3','8',' ',' ',' ',' '},
	{'I','M','X','1','7','4',' ',' ',' ',' '},
	{'A','R','0','3','3','1',' ',' ',' ',' '},
	{'M','T','9','P','0','3','1',' ',' ',' '},
	{'M','T','9','M','1','3','1',' ',' ',' '},
	{'M','N','3','4','0','4','1',' ',' ',' '},
	{'I','M','X','0','7','6',' ',' ',' ',' '},
	{'P','O','3','1','0','0','K',' ',' ',' '},
	{'P','S','1','2','1','0','K',' ',' ',' '},
	{'I','M','X','2','9','0',' ',' ',' ',' '},
	{'I','M','X','3','2','2',' ',' ',' ',' '},
	{'I','M','X','1','7','8',' ',' ',' ',' '},
	{'I','M','X','2','2','6',' ',' ',' ',' '},
	{'E','X','T','2',' ',' ',' ',' ',' ',' '},
	{'E','X','T','1',' ',' ',' ',' ',' ',' '},
	{'O','V','2','7','1','0',' ',' ',' ',' '},
	{'I','M','X','2','7','4',' ',' ',' ',' '},
	{'I','M','X','2','6','5',' ',' ',' ',' '},
	{'M','N','3','4','4','2','0',' ',' ',' '},
	{'I','M','X','3','2','6',' ',' ',' ',' '},
	{'I','M','X','2','5','3',' ',' ',' ',' '},
	{'P','S','1','4','0','0','K',' ',' ',' '},
	{'A','R','0','1','3','4',' ',' ',' ',' '},
	{'E','X','T','3',' ',' ',' ',' ',' ',' '},
	{'I','M','X','3','2','3',' ',' ',' ',' '},
	{'I','M','X','2','5','2',' ',' ',' ',' '},
	{'I','M','X','3','8','5',' ',' ',' ',' '},
	{'I','M','X','3','2','7',' ',' ',' ',' '},
	{'I','M','X','2','7','3',' ',' ',' ',' '},
	{'I','M','X','3','3','4',' ',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
};

static ROMDATA WORD LensTypeItem[][MenuItemCol]	= {
	// eng
	{'D','A','I','W','O','N',' ','(','Z',')'},	// zoom lens
	{'Y','O','P','T','I','C',' ','(','Z',')'},
	{'T','A','M','R','O','N',' ','X','3','0'},
	{'C','A','N','O','N',' ','(','Z',')',' '},
	{'S','U','N','N','Y',' ','(','Z',')',' '},
	{'Z','M','A','X',' ','X','0','3',' ',' '},
	{'U','N','I','O','N',' ','X','1','0',' '},
	{'Z','M','A','X',' ','X','1','0',' ',' '},
	{'U','N','I','O','N',' ','X','1','2',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	{'R','V','4','5','1','5',' ',' ',' ',' '},	// manual lens
	{'R','V','0','8','5','0',' ',' ',' ',' '},
	{'K','A','W','A','1','2','1','2','0',' '},
	{'R','V','1','5','3','0',' ',' ',' ',' '},
	{'8','X','8','F','M','1','2','1','4','C'},
	{'T','A','M','R','O','N',' ','5','M',' '},
	{'T','A','M','R','O','N',' ',' ',' ',' '},
	{'T','A','M','R','O','N',' ','P','W','M'},
	{'S','U','N','E','X','1','1','5',' ',' '},
	{'R','V','3','6','2','0',' ',' ',' ',' '},
	{'R','V','3','2','2','0',' ',' ',' ',' '},
	{'B','W','3','M','3','0','B','4','0','0'},
	{'B','W','4','K','4','0',' ','1','0','0'},
	{'B','W','3','M','L','4','3','B',' ','1'},
	{'R','V','1','0','F','M','1','6','1','4'},
	{'W','W',' ','4','K','U','H','D',' ',' '},
	{'W','W',' ','8','m','m','I','R',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{'D','A','I','W','O','N',' ','(','Z',')'},	// zoom lens
	{'Y','O','P','T','I','C',' ','(','Z',')'},
	{'T','A','M','R','O','N',' ','X','3','0'},
	{'C','A','N','O','N',' ','(','Z',')',' '},
	{'S','U','N','N','Y',' ','(','Z',')',' '},
	{'Z','M','A','X',' ','X','0','3',' ',' '},
	{'U','N','I','O','N',' ','X','1','0',' '},
	{'Z','M','A','X',' ','X','1','0',' ',' '},
	{'U','N','I','O','N',' ','X','1','2',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	{'R','V','4','5','1','5',' ',' ',' ',' '},	// manual lens
	{'R','V','0','8','5','0',' ',' ',' ',' '},
	{'K','A','W','A','1','2','1','2','0',' '},
	{'R','V','1','5','3','0',' ',' ',' ',' '},
	{'8','X','8','F','M','1','2','1','4','C'},
	{'T','A','M','R','O','N',' ','5','M',' '},
	{'T','A','M','R','O','N',' ',' ',' ',' '},
	{'T','A','M','R','O','N',' ','P','W','M'},
	{'S','U','N','E','X','1','1','5',' ',' '},
	{'R','V','3','6','2','0',' ',' ',' ',' '},
	{'R','V','3','2','2','0',' ',' ',' ',' '},
	{'B','W','3','M','3','0','B','4','0','0'},
	{'B','W','4','K','4','0',' ','1','0','0'},
	{'B','W','3','M','L','4','3','B',' ','1'},
	{'R','V','1','0','F','M','1','6','1','4'},
	{'W','W',' ','4','K','U','H','D',' ',' '},
	{'W','W',' ','8','m','m','I','R',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
};


// sysinfo menu info
static ROMDATA OSD_MENU_INFO SysInfoMenuInfo[] = {
	// menu,			attb,		Item,					init,	max,							title
	{(PWORD)HWVer,		MENU_TEXT,	(PWORD)HWVerItem,		0,		GetArrayMax(HWVerItem)/2,		(PWORD)SysInfoMenuTitle	},
	{(PWORD)SWVer,		MENU_TEXT,	(PWORD)FirmwareVer,		0,		GetArrayMax(FirmwareVer)/2,		(PWORD)SysInfoMenuTitle	},
	{(PWORD)SWDate,		MENU_TEXT,	(PWORD)FirmwareDate,	0,		GetArrayMax(FirmwareDate)/2,	(PWORD)SysInfoMenuTitle	},
	{(PWORD)SensorNo,	MENU_TEXT,	(PWORD)SensorNoItem,	0,		GetArrayMax(SensorNoItem)/2,	(PWORD)SysInfoMenuTitle	},
	{(PWORD)LensType,	MENU_TEXT,	(PWORD)LensTypeItem,	0,		GetArrayMax(LensTypeItem)/2,	(PWORD)SysInfoMenuTitle	},
	{(PWORD)RetMenu,	MENU_EXIT,	(PWORD)BlankItem,		0,		GetArrayMax(BlankItem)/2,		(PWORD)SysInfoMenuTitle	},
};

//--------------------------------------------------------------------------------------------------------------------------
// 9-9-1.Setup - Output Format
//--------------------------------------------------------------------------------------------------------------------------

// output format menu title
static ROMDATA WORD OutFrmtMenuTitle[][MenuTitleCol]	= {
	// eng
	{'A','r','e',' ','Y','o','u',' ','S','u','r','e',' ','?',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{'A','r','e',' ','Y','o','u',' ','S','u','r','e',' ','?'},	// out format
	{0},
};

// output format menu
static ROMDATA WORD OutFrmtNo[][MenuNameCol]		= {{' ','N','O',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','>'},{0,'N','O'}};
static ROMDATA WORD OutFrmtYes[][MenuNameCol]		= {{' ','Y','E','S',' ',' ',' ',' ',' ',' ',' ',' ',' ','>'},{0,'Y','E','S'}};

// output format menu info
static ROMDATA OSD_MENU_INFO OutFrmtMenuInfo[] = {
	// menu,				attb,	Item,				init,	max,						title
	{(PWORD)OutFrmtNo,	MENU_EXIT,	(PWORD)BlankItem,	0,		GetArrayMax(BlankItem)/2,	(PWORD)OutFrmtMenuTitle	},
	{(PWORD)OutFrmtYes,	MENU_FUNC,	(PWORD)BlankItem,	0,		GetArrayMax(BlankItem)/2,	(PWORD)OutFrmtMenuTitle	},
};

//--------------------------------------------------------------------------------------------------------------------------
// 9-10-1.Setup - USB Format
//--------------------------------------------------------------------------------------------------------------------------

// usb format menu title
static ROMDATA WORD USBFrmtMenuTitle[][MenuTitleCol]	= {
	// eng
	{'A','r','e',' ','Y','o','u',' ','S','u','r','e',' ','?',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{'A','r','e',' ','Y','o','u',' ','S','u','r','e',' ','?'},	// usb format
	{0},
};

// usb format menu
static ROMDATA WORD USBFrmtNo[][MenuNameCol]		= {{' ','N','O',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','>'},{0,'N','O'}};
static ROMDATA WORD USBFrmtYes[][MenuNameCol]		= {{' ','Y','E','S',' ',' ',' ',' ',' ',' ',' ',' ',' ','>'},{0,'Y','E','S'}};

// usb format menu info
static ROMDATA OSD_MENU_INFO USBFrmtMenuInfo[] = {
	// menu,				attb,		Item,				init,	max,					title
	{(PWORD)USBFrmtNo,	MENU_EXIT,	(PWORD)BlankItem,	0,		GetArrayMax(BlankItem)/2,	(PWORD)USBFrmtMenuTitle	},
	{(PWORD)USBFrmtYes,	MENU_FUNC,	(PWORD)BlankItem,	0,		GetArrayMax(BlankItem)/2,	(PWORD)USBFrmtMenuTitle	},
};

//--------------------------------------------------------------------------------------------------------------------------
// 10-1.Engr. Menu
//--------------------------------------------------------------------------------------------------------------------------

// engineer menu title
static ROMDATA WORD EngrMenuTitle[][MenuTitleCol]	= {
	// eng
	{'E','N','G','I','N','E','E','R',' ','M','E','N','U',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{398,399,258,259},	// engineer menu
	{0},
};

// engineer menu
static ROMDATA WORD InSelect[][MenuNameCol]		= {{'I','N','P','U','T',' ','S','E','L','E','C','T',' ',' '},{374,375,413,414,365,490}};
static ROMDATA WORD InFrmat[][MenuNameCol]			= {{'I','N','P','U','T',' ','F','O','R','M','A','T',' ',' '},{413,414,365,490,378,369}};
static ROMDATA WORD CCorrect[][MenuNameCol]		= {{'C','-','C','O','R','R','E','C','T','I','O','N',' ',' '},{297,296,432,404}};
static ROMDATA WORD TPInput[][MenuNameCol]			= {{'T','P','-','I','N','P','U','T',' ',' ',' ',' ',' ',' '},{491,492,338,45,365,490,493,494}};
static ROMDATA WORD TPOutput[][MenuNameCol]		= {{'T','P','-','O','U','T','P','U','T',' ',' ',' ',' ',' '},{491,492,338,45,365,283,493,494}};
static ROMDATA WORD TPSensor[][MenuNameCol]		= {{'T','P','-','S','E','N','S','O','R',' ',' ',' ',' ',' '},{491,492,338,45,497,485}};
static ROMDATA WORD BYRBypass[][MenuNameCol]		= {{'B','A','Y','E','R',' ','B','Y','P','A','S','S',' ',' '},{479,480,497,498}};
static ROMDATA WORD SensorFPS[][MenuNameCol]		= {{'S','E','N','S','O','R',' ','F','P','S',' ',' ',' ',' '},{338,334,495,317,496,367,368}};
static ROMDATA WORD MiscTuneMenu[][MenuNameCol]	= {{'M','I','S','C',' ','T','U','N','I','N','G',' ',' ',' '},{366,470,395,382}};
static ROMDATA WORD WDRTuneMenu[][MenuNameCol]		= {{'W','D','R',' ','T','U','N','I','N','G',' ',' ',' ',' '},{292,279,293,395,382}};
static ROMDATA WORD DNRTuneMenu[][MenuNameCol]		= {{'D','N','R',' ','T','U','N','I','N','G',' ',' ',' ',' '},{270,271,272,273,395,382}};

// engineer menu item
static ROMDATA WORD InSelectItem[][MenuItemCol] = {
	// eng
	{'S','E','N','S','O','R',' ',' ',' ',' '},
	{'H','D','M','I',' ',' ',' ',' ',' ',' '},
	{'S','E','N',' ','/',' ','H','D','M','I'},
	{'H','D','M','I',' ','/',' ','S','E','N'},
// 	{'S','E','N',' ','+',' ','H','D','M','I'},
	// chn
	{338,334,495,317,496},					// sensor
	{72,68,77,73},							// hdmi
	{338,334,495,317,496,47,72,68,77,73},	// sensor / hdmi
	{72,68,77,73,47,338,334,495,317,496},	// hdmi / sensor
};

static ROMDATA WORD InFrmtItem[][MenuItemCol] = {
	// eng
	{'7','2','0','x','4','8','0','i','6','0'},
	{'7','2','0','x','5','7','6','i','5','0'},
	{'9','6','0','x','4','8','0','i','6','0'},
	{'9','6','0','x','5','7','6','i','5','0'},
	{'7','2','0','x','4','8','0','p','6','0'},
	{'7','2','0','x','5','7','6','p','5','0'},
	{'9','6','0','x','4','8','0','p','6','0'},
	{'9','6','0','x','5','7','6','p','5','0'},
	{'7','2','0','p','6','0',' ',' ',' ',' '},
#if defined(__USE_59Hz_OUTPUT__)
	{'7','2','0','p','5','9',' ',' ',' ',' '},
#endif
	{'7','2','0','p','5','0',' ',' ',' ',' '},
	{'7','2','0','p','3','0',' ',' ',' ',' '},
	{'7','2','0','p','2','5',' ',' ',' ',' '},
	{'7','2','0','p','2','4',' ',' ',' ',' '},
	{'1','0','8','0','i','6','0',' ',' ',' '},
#if defined(__USE_59Hz_OUTPUT__)
	{'1','0','8','0','i','5','9',' ',' ',' '},
#endif
	{'1','0','8','0','i','5','0',' ',' ',' '}, 
	{'1','0','8','0','p','6','0',' ',' ',' '},
#if defined(__USE_59Hz_OUTPUT__)
	{'1','0','8','0','p','5','9',' ',' ',' '},
#endif
	{'1','0','8','0','p','5','0',' ',' ',' '},
	{'1','0','8','0','p','3','0',' ',' ',' '},
#if defined(__USE_59Hz_OUTPUT__)
	{'1','0','8','0','p','2','9',' ',' ',' '},
#endif
	{'1','0','8','0','p','2','5',' ',' ',' '},
	{'1','0','8','0','p','2','4',' ',' ',' '},
#if defined(__USE_MDIN_i540__) || defined(__USE_MDIN_i550__) 	// i540, i550
	{'4','K','_','3','8','4','0','H','3','0'},
#if defined(__USE_59Hz_OUTPUT__)
	{'4','K','_','3','8','4','0','H','2','9'},
#endif
	{'4','K','_','3','8','4','0','H','2','5'},
	{'4','K','_','3','8','4','0','H','2','4'},
	{'4','K','_','3','8','4','0','H','1','5'},
	{'4','K','_','3','8','4','0','H','1','2'},
	{'4','K','_','4','0','9','6','H','3','0'},
	{'4','K','_','4','0','9','6','H','2','5'},
	{'4','K','_','4','0','9','6','H','2','4'},
	{'4','M','_','1','4','4','0','p','3','0'},
	{'4','M','_','1','4','4','0','p','2','5'},
#if defined(__USE_4K60_INOUT__)
	{'4','K','_','3','8','4','0','H','6','0'},
	{'4','K','_','3','8','4','0','H','5','0'},
#endif
#endif
	// chn
	{'7','2','0','x','4','8','0','i','6','0'},
	{'7','2','0','x','5','7','6','i','5','0'},
	{'9','6','0','x','4','8','0','i','6','0'},
	{'9','6','0','x','5','7','6','i','5','0'},
	{'7','2','0','x','4','8','0','p','6','0'},
	{'7','2','0','x','5','7','6','p','5','0'},
	{'9','6','0','x','4','8','0','p','6','0'},
	{'9','6','0','x','5','7','6','p','5','0'},
	{'7','2','0','p','6','0',' ',' ',' ',' '},
#if defined(__USE_59Hz_OUTPUT__)
	{'7','2','0','p','5','9',' ',' ',' ',' '},
#endif
	{'7','2','0','p','5','0',' ',' ',' ',' '},
	{'7','2','0','p','3','0',' ',' ',' ',' '},
	{'7','2','0','p','2','5',' ',' ',' ',' '},
	{'7','2','0','p','2','4',' ',' ',' ',' '},
	{'1','0','8','0','i','6','0',' ',' ',' '},
#if defined(__USE_59Hz_OUTPUT__)
	{'1','0','8','0','i','5','9',' ',' ',' '},
#endif
	{'1','0','8','0','i','5','0',' ',' ',' '}, 
	{'1','0','8','0','p','6','0',' ',' ',' '},
#if defined(__USE_59Hz_OUTPUT__)
	{'1','0','8','0','p','5','9',' ',' ',' '},
#endif
	{'1','0','8','0','p','5','0',' ',' ',' '},
	{'1','0','8','0','p','3','0',' ',' ',' '},
#if defined(__USE_59Hz_OUTPUT__)
	{'1','0','8','0','p','2','9',' ',' ',' '},
#endif
	{'1','0','8','0','p','2','5',' ',' ',' '},
	{'1','0','8','0','p','2','4',' ',' ',' '},
#if defined(__USE_MDIN_i510__) || defined(__USE_MDIN_i540__) || defined(__USE_MDIN_i550__) 	// i510, i540, i550
	{'4','K','_','3','8','4','0','H','3','0'},
#if defined(__USE_59Hz_OUTPUT__)
	{'4','K','_','3','8','4','0','H','2','9'},
#endif
	{'4','K','_','3','8','4','0','H','2','5'},
	{'4','K','_','3','8','4','0','H','2','4'},
	{'4','K','_','3','8','4','0','H','1','5'},
	{'4','K','_','3','8','4','0','H','1','2'},
	{'4','K','_','4','0','9','6','H','3','0'},
	{'4','K','_','4','0','9','6','H','2','5'},
	{'4','K','_','4','0','9','6','H','2','4'},
	{'4','M','_','1','4','4','0','p','3','0'},
	{'4','M','_','1','4','4','0','p','2','5'},
#if defined(__USE_4K60_INOUT__)
	{'4','K','_','3','8','4','0','H','6','0'},
	{'4','K','_','3','8','4','0','H','5','0'},
#endif
#endif
};

static ROMDATA WORD BYRBypassItem[][MenuItemCol] = {
	// eng
	{'O','F','F',' ',' ',' ',' ',' ',' ',' '},
	{'F',' ','B','Y','P','A','S','S',' ',' '},
	{'R',' ','B','Y','P','A','S','S',' ',' '},
	{'F','&','R',' ','B','Y','P','A','S','S'},
	// chn
	{284},							// off
	{481,261,497,498},				// front bypass
	{481,482,497,498},				// rear bypass
	{481,261,47,481,482,497,498},	// front & rear bypass
};

static ROMDATA WORD SensorFpsItem[][MenuItemCol]	= {
#if   defined(__USE_SENS_120Hz_MENU__)
	// eng
	{'2','5','H','z',' ',' ',' ',' ',' ',' '},
	{'3','0','H','z',' ',' ',' ',' ',' ',' '},
	{'5','0','H','z',' ',' ',' ',' ',' ',' '},
	{'6','0','H','z',' ',' ',' ',' ',' ',' '},
	{'1','0','0','H','z',' ',' ',' ',' ',' '},
	{'1','2','0','H','z',' ',' ',' ',' ',' '},
	{'2','0','0','H','z',' ',' ',' ',' ',' '},
	{'2','4','0','H','z',' ',' ',' ',' ',' '},	
	// chn
	{'2','5',72,90},	// 25hz
	{'3','0',72,90},	// 30hz
	{'5','0',72,90},	// 50hz
	{'6','0',72,90},	// 60hz
	{'1','0','0',72,90},	// 100hz
	{'1','2','0',72,90},	// 120hz
	{'2','0','0',72,90},	// 100hz
	{'2','4','0',72,90},	// 120hz			
#elif   defined(__USE_SENS_120Hz_MENU__)
	// eng
	{'2','5','H','z',' ',' ',' ',' ',' ',' '},
	{'3','0','H','z',' ',' ',' ',' ',' ',' '},
	{'5','0','H','z',' ',' ',' ',' ',' ',' '},
	{'6','0','H','z',' ',' ',' ',' ',' ',' '},
	{'1','0','0','H','z',' ',' ',' ',' ',' '},
	{'1','2','0','H','z',' ',' ',' ',' ',' '},
	// chn
	{'2','5',72,90},	// 25hz
	{'3','0',72,90},	// 30hz
	{'5','0',72,90},	// 50hz
	{'6','0',72,90},	// 60hz
	{'1','0','0',72,90},	// 100hz
	{'1','2','0',72,90},	// 120hz	
#elif   defined(__USE_SENS_60Hz_MENU__)
	// eng
	{'2','5','H','z',' ',' ',' ',' ',' ',' '},
	{'3','0','H','z',' ',' ',' ',' ',' ',' '},
	{'5','0','H','z',' ',' ',' ',' ',' ',' '},
	{'6','0','H','z',' ',' ',' ',' ',' ',' '},
	// chn
	{'2','5',72,90},	// 25hz
	{'3','0',72,90},	// 30hz
	{'5','0',72,90},	// 50hz
	{'6','0',72,90},	// 60hz
#elif   defined(__USE_SENS_50Hz_MENU__)
	// eng
	{'2','5','H','z',' ',' ',' ',' ',' ',' '},
	{'3','0','H','z',' ',' ',' ',' ',' ',' '},
	{'5','0','H','z',' ',' ',' ',' ',' ',' '},
	// chn
	{'2','5',72,90},	// 25hz
	{'3','0',72,90},	// 30hz
	{'5','0',72,90},	// 50hz
#elif defined(__USE_SENS_10Hz_MENU__)
	// eng
	{'1','0','H','z',' ',' ',' ',' ',' ',' '},
	{'1','2','H','z',' ',' ',' ',' ',' ',' '},
	// chn
	{'1','0',72,90},	// 10hz
	{'1','2',72,90},	// 12hz
#else
	// eng
	{'2','5','H','z',' ',' ',' ',' ',' ',' '},
	{'3','0','H','z',' ',' ',' ',' ',' ',' '},
	// chn
	{'2','5',72,90},	// 25hz
	{'3','0',72,90},	// 30hz
#endif
};

static ROMDATA WORD WDRItem[][MenuItemCol]	= {
	// eng
	{'O','F','F',' ',' ',' ',' ',' ',' ',' '},
#if (!defined(__USE_WDR_EXT_MENU__))
	{'O','N',' ',' ',' ',' ',' ',' ',' ','>'},
#else
  #if WDR_SENS_DOL_3FRM
	{'L','I','N','E','-','3',' ',' ',' ','>'},
  #endif
  #if WDR_SENS_DOL_2FRM
	{'L','I','N','E','-','2',' ',' ',' ','>'},
  #endif
  #if WDR_SENS_BUILT_IN
	{'T','O','N','E','M','A','P',' ',' ','>'},
  #endif
  #if WDR_SENS_MULT_EXP
	{'F','R','A','M','E',' ',' ',' ',' ','>'},
  #endif
  #if WDR_SENS_BYPAS_IN
	{'D','W','D','R',' ',' ',' ',' ',' ','>'},
  #endif
#endif
	
	// chn
	{284},	// off
#if (!defined(__USE_WDR_EXT_MENU__))
	{285,0,0,0,0,0,0,0,0,62},	// on >
#else
  #if WDR_SENS_DOL_3FRM
	{'L','I','N','E','-','3',' ',' ',' ','>'},
  #endif
  #if WDR_SENS_DOL_2FRM
	{'L','I','N','E','-','2',' ',' ',' ','>'},
  #endif
  #if WDR_SENS_BUILT_IN
	{'T','O','N','E','M','A','P',' ',' ','>'},
  #endif
  #if WDR_SENS_MULT_EXP
	{'F','R','A','M','E',' ',' ',' ',' ','>'},
  #endif
  #if WDR_SENS_BYPAS_IN
	{'D','W','D','R',' ',' ',' ',' ',' ','>'},
  #endif
#endif
};

#if defined(__USE_25Hz_SENSOR__)
#if defined(__USE_SENS_120Hz_MENU__)
#define 	SenFpsInit	4
#elif defined(__USE_SENS_60Hz_MENU__)
#define 	SenFpsInit	2
#elif defined(__USE_SENS_50Hz_MENU__)
#define 	SenFpsInit	0
#else
#define 	SenFpsInit	0
#endif
#else
#if defined(__USE_SENS_120Hz_MENU__)
#define 	SenFpsInit	5
#elif defined(__USE_SENS_60Hz_MENU__)
#define 	SenFpsInit	3
#elif defined(__USE_SENS_50Hz_MENU__)
#define 	SenFpsInit	1
#else
#define 	SenFpsInit	1
#endif
#endif

#if defined(__USE_MDIN_i500__) || defined(__USE_MDIN_i550__) 		// MDIN-i500, i550
#if defined(__USE_CMOS_AUX_SYNC_OUT__) && (defined(__USE_CMOS_IMX274__) || defined(__USE_CMOS_IMX226__) || defined(__USE_CMOS_IMX326__))
#define		InSelAttb		MENU_SKIP
#else
#define		InSelAttb		MENU_ITEM
#endif
#else																// MDIN-i510, i540
#define		InSelAttb		MENU_SKIP
#endif

#if defined(__USE_MDIN_i550__)		// i550
#if defined(__USE_59Hz_OUTPUT__)
#define		InFrmtInit		24		// 4K_3840H30
#else
#define		InFrmtInit		20		// 4K_3840H30
#endif
#else								// i500
#if defined(__USE_59Hz_OUTPUT__)
#define		InFrmtInit		17		// 1080p60
#else
#define		InFrmtInit		15		// 1080p60
#endif
#endif

// engineer menu info
static ROMDATA OSD_MENU_INFO EngrMenuInfo[] = {
	// menu,				attb,		Item,					init,		max,							title
	{(PWORD)InSelect,		InSelAttb,	(PWORD)InSelectItem,	0,			GetArrayMax(InSelectItem)/2,	(PWORD)EngrMenuTitle	},
	{(PWORD)InFrmat,		MENU_ITEM,	(PWORD)InFrmtItem,		InFrmtInit,	GetArrayMax(InFrmtItem)/2,		(PWORD)EngrMenuTitle	},
	{(PWORD)CCorrect,		MENU_SUB,	(PWORD)SubItem,			0,			GetArrayMax(SubItem),		(PWORD)EngrMenuTitle	},
	{(PWORD)TPInput,		MENU_VALUE,	NULL,					0,			14,								(PWORD)EngrMenuTitle	},
	{(PWORD)TPOutput,		MENU_VALUE,	NULL,					0,			13,								(PWORD)EngrMenuTitle	},
	{(PWORD)TPSensor,		MENU_SUB,	(PWORD)SubItem,			0,			GetArrayMax(SubItem)/2,			(PWORD)EngrMenuTitle	},
	{(PWORD)BYRBypass,		MENU_ITEM,	(PWORD)BYRBypassItem,	0,			GetArrayMax(BYRBypassItem)/2,	(PWORD)EngrMenuTitle	},
#if defined(__USE_NO__CMOS__) || defined(__USE_EXT2IPP__)	
	{(PWORD)SensorFPS,		MENU_SKIP,	(PWORD)SensorFpsItem,	SenFpsInit,	GetArrayMax(SensorFpsItem)/2,	(PWORD)EngrMenuTitle	},
#else
	{(PWORD)SensorFPS,		MENU_ITEM,	(PWORD)SensorFpsItem,	SenFpsInit,	GetArrayMax(SensorFpsItem)/2,	(PWORD)EngrMenuTitle	},
#endif
	{(PWORD)MiscTuneMenu,	MENU_SUB,	(PWORD)SubItem,			0,			GetArrayMax(SubItem)/2,			(PWORD)EngrMenuTitle	},
#if defined(__USE_WDR_PROCESS__)
	{(PWORD)WDRTuneMenu,	MENU_SUB,	(PWORD)WDRItem,			0,			GetArrayMax(WDRItem)/2,			(PWORD)EngrMenuTitle	},
#else
	{(PWORD)WDRTuneMenu,	MENU_SKIP,	(PWORD)WDRItem,			0,			GetArrayMax(WDRItem)/2,			(PWORD)EngrMenuTitle	},
#endif
	{(PWORD)DNRTuneMenu,	MENU_SUB,	(PWORD)SubItem,			0,			GetArrayMax(SubItem)/2,			(PWORD)EngrMenuTitle	},
	{(PWORD)RetMenu,		MENU_EXIT,	(PWORD)BlankItem,		0,			GetArrayMax(BlankItem)/2,		(PWORD)EngrMenuTitle	},
};
//--------------------------------------------------------------------------------------------------------------------------
//  10-3-1. Color Correction Tuning
//--------------------------------------------------------------------------------------------------------------------------
// Color Correction menu title
static ROMDATA WORD ColorCorrMenuTitle[][MenuTitleCol]	= {
	// eng
	{'C','O','L','O','R',' ','C','O','R','R','E','C','T','I','O','N',' ','T','U','N','I','N','G',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},	
	// chn
	{297,296,432,404,45,395,382},	// cc - tuning
	{0},	
};

// sensor tp menu
static ROMDATA WORD ColorCorrRed[][MenuNameCol]		= {{'C','C',' ','R','E','D',' ','L','I','N','E',' ',' ',' '},{297,296,432,404,45,352,297}};
static ROMDATA WORD ColorCorrGreen[][MenuNameCol]		= {{'C','C',' ','G','R','E','E','N',' ','L','I','N','E',' '},{297,296,432,404,45,351,297}};
static ROMDATA WORD ColorCorrBlue[][MenuNameCol]		= {{'C','C',' ','B','L','U','E',' ','L','I','N','E',' ',' '},{297,296,432,404,45,353,297}};
static ROMDATA WORD CACAREASEL[][MenuNameCol]		= {{'C','A','C',' ','A','R','E','A',' ','C','T','R','L'},{'C','A','C',' ','A','R','E','A',' ','C','T','R','L'}};
#if defined(CAC_ctrl_theta)
static ROMDATA WORD CACTHETA[][MenuNameCol]	= {{'C','A','C',' ','T','H','E','T','A'},{'C','A','C',' ','T','H','E','T','A'}};
#else
static ROMDATA WORD CACCOS[][MenuNameCol]	= {{'C','A','C',' ','C','O','S','I','N','E'},{'C','A','C',' ','C','O','S','I','N','E'}};
static ROMDATA WORD CACSIN[][MenuNameCol]	= {{'C','A','C',' ','S','I','N','E'},{'C','A','C',' ','S','I','N','E'}};
#endif
static ROMDATA WORD CACSAT[][MenuNameCol]	= {{'C','A','C',' ','S','A','T','U','R','A','T','I','O','N'},{'C','A','C',' ','S','A','T','U','R','A','T','I','O','N'}};
static ROMDATA WORD CACSAVE[][MenuNameCol]	= {{'C','A','C',' ','S','A','V','E',' ','P','R','O','M'},{'C','A','C',' ','S','A','V','E',' ','P','R','O','M'}};

#if defined(__USE_IMX265_MONO_SENSOR__)
#define Def_ColorCorr	4
#else
#define Def_ColorCorr	7
#endif

static ROMDATA WORD CACItem[][MenuItemCol] = {
	// eng
	{'M','A','G','E','N','T','A'},
	{'R','E','D'},
	{'Y','E','L','L','O','W'},
	{'G','R','E','E','N'},
	{'C','Y','A','N'},
	{'B','L','U','E'},
	// chn
	{'M','A','G','E','N','T','A'},
	{'R','E','D'},
	{'Y','E','L','L','O','W'},
	{'G','R','E','E','N'},
	{'C','Y','A','N'},
	{'B','L','U','E'},
};

// Color Correction menu info
static ROMDATA OSD_MENU_INFO ColorCorrMenuInfo[] = {
	// menu,				attb,		Item,					init,		max,						title
	{(PWORD)ColorCorrRed,	MENU_VALUE,	NULL,					7,		10,							(PWORD)ColorCorrMenuTitle	},
	{(PWORD)ColorCorrGreen,	MENU_VALUE,	NULL,					7,		10,							(PWORD)ColorCorrMenuTitle	},	
	{(PWORD)ColorCorrBlue,	MENU_VALUE,	NULL,					7,		10,							(PWORD)ColorCorrMenuTitle	},
	{(PWORD)CACAREASEL,		MENU_ITEM,	(PWORD)CACItem,			0,		GetArrayMax(CACItem)/2,		(PWORD)ColorCorrMenuTitle	},	
#if defined(CAC_ctrl_theta)
	{(PWORD)CACTHETA,		MENU_VALUE,	NULL,					90,		180,						(PWORD)ColorCorrMenuTitle	},
#else
	{(PWORD)CACCOS,			MENU_VALUE,	NULL,					32,		64,							(PWORD)ColorCorrMenuTitle	},
	{(PWORD)CACSIN,			MENU_VALUE,	NULL,					32,		64,							(PWORD)ColorCorrMenuTitle	},
#endif
	{(PWORD)CACSAT,			MENU_VALUE,	NULL,					32,		64,							(PWORD)ColorCorrMenuTitle	},
	{(PWORD)CACSAVE,		MENU_FUNC,	(PWORD)WaitOkItem,		0,		GetArrayMax(WaitOkItem)/2,	(PWORD)ColorCorrMenuTitle	},	
	{(PWORD)RetMenu,		MENU_EXIT,	(PWORD)BlankItem,		0,		GetArrayMax(BlankItem)/2,	(PWORD)ColorCorrMenuTitle	},
};

//--------------------------------------------------------------------------------------------------------------------------
// 10-7-1. Sensor TP Select
//--------------------------------------------------------------------------------------------------------------------------

// sensor tp menu title
static ROMDATA WORD TPMenuTitle[][MenuTitleCol]	= {
	// eng
	{'T','E','S','T',' ','P','A','T','T','E','R','N',' ','-',' ','B','A','Y','E','R','D','A','T','A',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{491,492,338,45,497,485},	// test pattern - bayer
	{0},
};

// sensor tp menu
static ROMDATA WORD TPSelect[][MenuNameCol]		= {{'T','P',' ','S','E','L','E','C','T',' ',' ',' ',' ',' '},{491,492,338,415,416}};
static ROMDATA WORD TPOnOff[][MenuNameCol]			= {{'T','P',' ','O','F','F','/','O','N',' ',' ',' ',' ',' '},{491,492,338,390,391}};
static ROMDATA WORD TPSizePosi[][MenuNameCol]		= {{'T','P',' ','S','I','Z','E','/','P','O','S',' ',' ',' '},{491,492,338,456,457,47,381,382}};

#if defined(__USE_MDIN_i500__)		// MDIN-i500
#define	TPSensorMAX	39
#else								// MDIN-i51X (i510, i540, i550)
#define	TPSensorMAX	50
#endif

// sensor tp menu info
static ROMDATA OSD_MENU_INFO TPMenuInfo[] = {
	// menu,				attb,		Item,				init,	max,						title
	{(PWORD)TPSelect,		MENU_VALUE,	NULL,				0,		TPSensorMAX,				(PWORD)TPMenuTitle	},
	{(PWORD)TPOnOff,		MENU_ITEM,	(PWORD)OnOffItem,	0,		GetArrayMax(OnOffItem)/2,	(PWORD)TPMenuTitle	},
	{(PWORD)TPSizePosi,		MENU_SUB,	(PWORD)SubItem,		0,		GetArrayMax(SubItem)/2,		(PWORD)TPMenuTitle	},
	{(PWORD)DefaultMenu,	MENU_FUNC,	(PWORD)BlankItem,	0,		GetArrayMax(BlankItem)/2,	(PWORD)TPMenuTitle	},
	{(PWORD)RetMenu,		MENU_EXIT,	(PWORD)BlankItem,	0,		GetArrayMax(BlankItem)/2,	(PWORD)TPMenuTitle	},
};


//--------------------------------------------------------------------------------------------------------------------------
//  10-9-1. Misc Tuning
//--------------------------------------------------------------------------------------------------------------------------

// misc(tuning) menu title
static ROMDATA WORD MiscTuneMenuTitle[][MenuTitleCol]	= {
	// eng
	{'M','I','S','C',' ','T','U','N','I','N','G',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{366,470,395,382},	// misc tuning
	{0},
};

// misc(tuning) menu
static ROMDATA WORD YCConversion[][MenuNameCol]	= {{'Y','C',' ','C','O','N','V','E','R','S','I','O','N',' '},{'Y','C',' ','C','O','N','V','E','R','S','I','O','N',' '}};
static ROMDATA WORD OUTCSCDefine[][MenuNameCol]	= {{'O','U','T','C','S','C',' ','C','O','N','T','R','O','L'},{'O','U','T','C','S','C',' ','C','O','N','T','R','O','L'}};
static ROMDATA WORD Ditheren[][MenuNameCol]		= {{'O','U','T','P','U','T',' ','D','I','T','H','E','R',' '},{'O','U','T','P','U','T',' ','D','I','T','H','E','R',' '}};
static ROMDATA WORD USERPLLTune[][MenuNameCol]		= {{'U','S','E','R',' ','P','L','L',' ','T','E','S','T',' '},{'U','S','E','R',' ','P','L','L',' ','T','E','S','T',' '}};
static ROMDATA WORD IRRemoteEn[][MenuNameCol]		= {{'I','R',' ','R','E','M','O','T','E',' ',' ',' ',' ',' '},{'I','R',' ','R','E','M','O','T','E',' ',' ',' ',' ',' '}};
static ROMDATA WORD HDMITxMode[][MenuNameCol]		= {{'H','D','M','I',' ','T','X',' ','M','O','D','E',' ',' '},{'H','D','M','I',' ','T','X',' ','M','O','D','E',' ',' '}};
static ROMDATA WORD PanCtrlMode[][MenuNameCol]		= {{'P','A','N',' ','C','T','R','L',' ','M','O','D','E',' '},{'P','A','N',' ','C','T','R','L',' ','M','O','D','E',' '}};
static ROMDATA WORD PanCtrlParam[][MenuNameCol]	= {{'P','A','N',' ','C','T','R','L',' ','V','A','L','U','E'},{'P','A','N',' ','C','T','R','L',' ','V','A','L','U','E'}};
static ROMDATA WORD ChgTestMode[][MenuNameCol]	= {{'C','H','G',' ','T','E','S','T',' ','M','O','D','E',' '},{'C','H','G',' ','T','E','S','T',' ','M','O','D','E',' '}};

// misc(tuning) menu item
static ROMDATA WORD YCConverItem[][MenuItemCol] = {
	// eng
//	{'H','D','0','-','2','5','5',' ',' ',' '},
//	{'H','D','1','6','-','2','3','5',' ',' '},
//	{'H','D','1','6','-','2','5','5',' ',' '},
//	{'H','D','0','-','2','3','5',' ',' ',' '},
	// chn
//	{'H','D','0','-','2','5','5',' ',' ',' '},
//	{'H','D','1','6','-','2','3','5',' ',' '},
//	{'H','D','1','6','-','2','5','5',' ',' '},
//	{'H','D','0','-','2','3','5',' ',' ',' '},
	// eng
	{'B','T','7','0','9',' ','F','U','L','L'},
	{'B','T','7','0','9',' ','S','T','D',' '},
	{'B','T','.','2','0','2','0',' ',' ',' '},
	{'A','D','O','B','E','R','G','B',' ',' '},
	// chn
	{'B','T','7','0','9',' ','F','U','L','L'},
	{'B','T','7','0','9',' ','S','T','D',' '},
	{'B','T','.','2','0','2','0',' ',' ',' '},
	{'A','D','O','B','E','R','G','B',' ',' '},
};

static ROMDATA WORD OUTCSCDefineItem[][MenuItemCol] = {
	// eng
	{'F','U','L','L','B','Y','P','A','S','S'},
	{'S','T','D',' ','B','Y','P','A','S','S'},
	{'S','O','N','Y',' ','R','A','N','G','E'},
	// chn
	{'F','U','L','L','B','Y','P','A','S','S'},
	{'S','T','D',' ','B','Y','P','A','S','S'},
	{'S','O','N','Y',' ','R','A','N','G','E'},
};

static ROMDATA WORD USERPLLTuneItem[][MenuItemCol] = {
	// eng
	{'1','5','f','r','(','1','4','4','M',')'},
	{'1','7','f','r','(','1','6','6','M',')'},
	{'2','0','f','r','(','1','9','3','M',')'},
	{'2','2','f','r','(','2','1','1','M',')'},
	{'2','5','f','r','(','2','4','1','M',')'},
	{'3','0','f','r','(','2','8','8','M',')'},
	// chn
	{'1','5','f','r','(','1','4','4','M',')'},
	{'1','7','f','r','(','1','6','6','M',')'},
	{'2','0','f','r','(','1','9','3','M',')'},
	{'2','2','f','r','(','2','1','1','M',')'},
	{'2','5','f','r','(','2','4','1','M',')'},
	{'3','0','f','r','(','2','8','8','M',')'},
};

static ROMDATA WORD HDMITxModeItem[][MenuItemCol] = {
	// eng
	{'4','4','4','(','T','V',')','7','0','9'},
	{'4','4','4','(','T','V',')','6','0','1'},
	{'4','2','2','(','M','4','0','0',')',' '},
	// chn
	{'4','4','4','(','T','V',')','7','0','9'},
	{'4','4','4','(','T','V',')','6','0','1'},
	{'4','2','2','(','M','4','0','0',')',' '},
};

static ROMDATA WORD PanCtrlModeItem[][MenuItemCol] = {
	// eng
	{'S','e','l','e','c','t','.','.','-','>'},
	{'W','B','R','G','a','i','n','S','S','1'},
	{'W','B','B','G','a','i','n','S','S','1'},
	{'W','B','R','G','a','i','n','S','S','3'},
	{'W','B','B','G','a','i','n','S','S','3'},
	// chn
	{'S','e','l','e','c','t','.','.','-','>'},
	{'W','B','R','G','a','i','n','S','S','1'},
	{'W','B','B','G','a','i','n','S','S','1'},
	{'W','B','R','G','a','i','n','S','S','3'},
	{'W','B','B','G','a','i','n','S','S','3'},
};

#if	defined(__MDIN_i5XX_FPGA__)			// FPGA board
#define 	YCConvInit	1
#define 	OUTCSCDef	1
#else
#define 	YCConvInit	0
#define 	OUTCSCDef	0
#endif

// misc(tuning) menu info
static ROMDATA OSD_MENU_INFO MiscTuneMenuInfo[] = {
	// menu,				attb,		Item,					init,		max,							title
	{(PWORD)YCConversion,	MENU_ITEM,	(PWORD)YCConverItem,	YCConvInit,	GetArrayMax(YCConverItem),	(PWORD)MiscTuneMenuTitle	},
	{(PWORD)OUTCSCDefine,	MENU_ITEM,	(PWORD)OUTCSCDefineItem,	OUTCSCDef,			GetArrayMax(OUTCSCDefineItem),	(PWORD)MiscTuneMenuTitle	},
	{(PWORD)Ditheren,		MENU_ITEM,	(PWORD)OnOffItem,		ON,			GetArrayMax(OnOffItem)/2,		(PWORD)MiscTuneMenuTitle	},
#if defined(__USE_MDIN_i500__) 		// MDIN-i500
	{(PWORD)USERPLLTune,	MENU_SKIP,	(PWORD)USERPLLTuneItem,	0,			GetArrayMax(LVDSPLLTuneItem),	(PWORD)MiscTuneMenuTitle	},
	{(PWORD)IRRemoteEn,		MENU_SKIP,	(PWORD)OnOffItem,		ON,			GetArrayMax(OnOffItem),		(PWORD)MiscTuneMenuTitle	},
	{(PWORD)HDMITxMode,		MENU_SKIP,	(PWORD)HDMITxModeItem,	0,			GetArrayMax(HDMITxModeItem),	(PWORD)MiscTuneMenuTitle	},
	{(PWORD)PanCtrlMode,	MENU_SKIP,	(PWORD)PanCtrlModeItem,	0,			GetArrayMax(PanCtrlModeItem),	(PWORD)MiscTuneMenuTitle	},
	{(PWORD)PanCtrlParam,	MENU_SKIP,	NULL,					125,		250,							(PWORD)MiscTuneMenuTitle	},
#else								// MDIN-i51X (i510, i540, i550)
#if defined(__USE_ISP_SCLK_OUT__)
#if defined(__USE_IMX226_4K15P_MODE__)
	{(PWORD)USERPLLTune,	MENU_ITEM,	(PWORD)USERPLLTuneItem,	0,			GetArrayMax(USERPLLTuneItem),	(PWORD)MiscTuneMenuTitle	},
#else
	{(PWORD)USERPLLTune,	MENU_ITEM,	(PWORD)USERPLLTuneItem,	5,			GetArrayMax(USERPLLTuneItem),	(PWORD)MiscTuneMenuTitle	},
#endif
	{(PWORD)USERPLLTune,	MENU_ITEM,	(PWORD)USERPLLTuneItem,	5,			GetArrayMax(USERPLLTuneItem),	(PWORD)MiscTuneMenuTitle	},
#endif
#if defined(__USE_IRKEY_SWITCH__)
	{(PWORD)IRRemoteEn,		MENU_ITEM,	(PWORD)OnOffItem,		OFF,		GetArrayMax(OnOffItem),		(PWORD)MiscTuneMenuTitle	},
#else
	{(PWORD)IRRemoteEn,		MENU_ITEM,	(PWORD)OnOffItem,		ON,			GetArrayMax(OnOffItem),		(PWORD)MiscTuneMenuTitle	},
#endif
	{(PWORD)HDMITxMode,		MENU_ITEM,	(PWORD)HDMITxModeItem,	0,			GetArrayMax(HDMITxModeItem),	(PWORD)MiscTuneMenuTitle	},
#if defined(__PANORAMA_SETUP__)
	{(PWORD)PanCtrlMode,	MENU_ITEM,	(PWORD)PanCtrlModeItem,	0,			GetArrayMax(PanCtrlModeItem),	(PWORD)MiscTuneMenuTitle	},
	{(PWORD)PanCtrlParam,	MENU_VALUE,	NULL,					125,		250,							(PWORD)MiscTuneMenuTitle	},
#else
	{(PWORD)ChgTestMode,	MENU_FUNC,	(PWORD)TestOkItem,		0,			GetArrayMax(TestOkItem)/2,		(PWORD)MiscTuneMenuTitle	},
#endif
#endif
	{(PWORD)RetMenu,		MENU_EXIT,	(PWORD)BlankItem,		0,			GetArrayMax(BlankItem)/2,		(PWORD)MiscTuneMenuTitle	},
};


//--------------------------------------------------------------------------------------------------------------------------
//  10-11. WDR (common define/string)
//--------------------------------------------------------------------------------------------------------------------------
static ROMDATA WORD WDRFramView[][MenuNameCol] = {{'F','R','A','M','E',' ','V','I','E','W',' ','S','E','L'},{367,365,283,378,369}};
static ROMDATA WORD WDRStrength[][MenuNameCol] = {{'W','D','R',' ','S','T','R','E','N','G','T','H',' ',' '},{292,279,293,287,288}};
#if WDR_TM_SIZE_CTRL
static ROMDATA WORD WDRContrast[][MenuNameCol] = {{'L','O','C','A','L',' ','C','O','N','T','R','A','S','T'},{509,295,434,435,306}};
#else
static ROMDATA WORD WDRGhostRem[][MenuNameCol] = {{'D','E','B','L','U','R','&','D','E','G','H','O','S','T'},{504,378,505,38,504,507,508}};
#endif
static ROMDATA WORD WDRAutoExpo[][MenuNameCol] = {{'W','D','R',' ','A','E',' ','M','O','D','E',' ',' ',' '},{292,279,293,262,263,378,369}};
static ROMDATA WORD WDRAETarget[][MenuNameCol] = {{'A','E',' ','B','R','I','G','H','T',' ',' ',' ',' ',' '},{278,279,262,263,305,306}};
static ROMDATA WORD WDRSensGain[][MenuNameCol] = {{'A','G','C',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},{278,279,312,313,428,291}};
static ROMDATA WORD WDRLensIris[][MenuNameCol] = {{'I','R','I','S',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},{263,406}};
static ROMDATA WORD WDRSensShut[][MenuNameCol] = {{'S','H','U','T','T','E','R',' ',' ',' ',' ',' ',' ',' '},{307,308,400,306}};
static ROMDATA WORD WDRExpRatio[][MenuNameCol] = {{'E','X','P','O','S','U','R','E',' ','R','A','T','I','O'},{262,263,435,368}};

// {'A','U','T','O',' ','E','X','P','O','S','U','R','E',' '}
static ROMDATA WORD xWDRSetWDRAutoItem[][MenuItemCol]	= {
	// eng
	{'M','A','N','U','A','L',' ',' ',' ',' '},
	{'A','U','T','O',' ',' ',' ',' ',' ',' '},
	// chn
	{286,279},	// manual
	{278,279},	// auto
};


//--------------------------------------------------------------------------------------------------------------------------
//  10-11-a. L3WDR - Line by Line (3-Frame)
//--------------------------------------------------------------------------------------------------------------------------

// wdr(line mode 3frame) menu title
static ROMDATA WORD L3WDRSetMenuTitle[][MenuTitleCol]	= {
	// eng
	{' ','W','D','R',' ','(','L','i','n','e',' ','b','y',' ','L','i','n','e',' ','3','F','r','a','m','e',')'},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{0,292,279,293,0,'(','L','i','n','e',' ','b','y',' ','L','i','n','e',' ','3','F','r','a','m','e',')'},
	{0},
};

// wdr(line mode 3frame) menu item
// {'F','R','A','M','E',' ','V','I','E','W',' ','S','E','L'}
static ROMDATA WORD L3WDRSetWDRViewItem[][MenuItemCol]	= {
	// eng
	{'W','D','R',' ','O','N',' ',' ',' ',' '},
	{'L','O','N','G',' ',' ',' ',' ',' ',' '},
	{'S','H','O','R','T',' ',' ',' ',' ',' '},
	{'S','H','O','R','T','E','R',' ',' ',' '},
	// chn
	{292,279,293,45,285},	// wdr on
	{417,367},				// long
	{510,367},				// short
	{511,510,367},			// shorter
};

// {'S','H','U','T','T','E','R',' ','R','A','T','I','O'}
static ROMDATA WORD L3WDRSetExpRtoItem[][MenuItemCol]	= {
	// eng
	{'1',':','6',':','3','6',' ',' ',' ',' '},
	{'1',':','8',':','6','4',' ',' ',' ',' '},
	// chn
	{'1',':','6',':','3','6',' ',' ',' ',' '},
	{'1',':','8',':','6','4',' ',' ',' ',' '},
};

// wdr(line mode 3frame) menu info
static ROMDATA OSD_MENU_INFO L3WDRSetMenuInfo[] = {
	// menu,				attb,		Item,						init,					max,								title
	{(PWORD)WDRFramView,	MENU_ITEM,	(PWORD)L3WDRSetWDRViewItem,	MISP_WDR_FVIEW_WDR,		GetArrayMax(L3WDRSetWDRViewItem)/2,	(PWORD)L3WDRSetMenuTitle	},
#if WDR_USE_MANU_TM
	{(PWORD)WDRStrength,	MENU_VALUE,	NULL,						12,						29,									(PWORD)L3WDRSetMenuTitle	},
#else
	{(PWORD)WDRStrength,	MENU_VALUE,	NULL,						3,						8,									(PWORD)L3WDRSetMenuTitle	},
#endif
#if WDR_TM_SIZE_CTRL
	{(PWORD)WDRContrast,	MENU_VALUE,	NULL,						2,						5,									(PWORD)L3WDRSetMenuTitle	},
#else
	{(PWORD)WDRGhostRem,	MENU_VALUE,	NULL,						7,						14,									(PWORD)L3WDRSetMenuTitle	},
#endif
	{(PWORD)WDRAutoExpo,	MENU_ITEM,	(PWORD)xWDRSetWDRAutoItem,	MISP_WDR_AE_AUTO,		GetArrayMax(xWDRSetWDRAutoItem)/2,	(PWORD)L3WDRSetMenuTitle	},
	{(PWORD)WDRAETarget,	MENU_VALUE,	NULL,						10,						19,									(PWORD)L3WDRSetMenuTitle	},
	{(PWORD)WDRSensGain,	MENU_VALUE,	NULL,						0,						19,									(PWORD)L3WDRSetMenuTitle	},
	{(PWORD)WDRLensIris,	MENU_VALUE,	NULL,						19,						19,									(PWORD)L3WDRSetMenuTitle	},
	{(PWORD)WDRSensShut,	MENU_VALUE,	NULL,						19,						19,									(PWORD)L3WDRSetMenuTitle	},
#if L3WDR_HOLD_RATIO
	{(PWORD)WDRExpRatio,	MENU_SKIP,	(PWORD)L3WDRSetExpRtoItem,	1,						GetArrayMax(L3WDRSetExpRtoItem)/2,	(PWORD)L3WDRSetMenuTitle	},
#else
	{(PWORD)WDRExpRatio,	MENU_ITEM,	(PWORD)L3WDRSetExpRtoItem,	1,						GetArrayMax(L3WDRSetExpRtoItem)/2,	(PWORD)L3WDRSetMenuTitle	},
#endif
	{(PWORD)RetMenu,		MENU_EXIT,	(PWORD)BlankItem,			0,						GetArrayMax(BlankItem),				(PWORD)L3WDRSetMenuTitle	},
};

//--------------------------------------------------------------------------------------------------------------------------
//  10-11-b. L2WDR - Line by Line (2-Frame)
//--------------------------------------------------------------------------------------------------------------------------

// wdr(line mode 4frame) menu title
static ROMDATA WORD L2WDRSetMenuTitle[][MenuTitleCol]	= {
	// eng
	{' ','W','D','R',' ','(','L','i','n','e',' ','b','y',' ','L','i','n','e',' ','2','F','r','a','m','e',')'},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{0,292,279,293,0,'(','L','i','n','e',' ','b','y',' ','L','i','n','e',' ','2','F','r','a','m','e',')'},
	{0},
};

// wdr(line mode 4frame) menu item
// {'F','R','A','M','E',' ','V','I','E','W',' ','S','E','L'}
static ROMDATA WORD L2WDRSetWDRViewItem[][MenuItemCol]	= {
	// eng
	{'W','D','R',' ','O','N',' ',' ',' ',' '},
	{'L','O','N','G',' ',' ',' ',' ',' ',' '},
	{'S','H','O','R','T',' ',' ',' ',' ',' '},
	// chn
	{292,279,293,45,285},	// wdr on
	{417,367},				// long
	{510,367},				// short
};

// {'S','H','U','T','T','E','R',' ','R','A','T','I','O'}
static ROMDATA WORD L2WDRSetExpRtoItem[][MenuItemCol]	= {
	// eng
	{'1',':','1','6',' ',' ',' ',' ',' ',' '},
	{'1',':','3','2',' ',' ',' ',' ',' ',' '},
	// chn
	{'1',':','1','6',' ',' ',' ',' ',' ',' '},
	{'1',':','3','2',' ',' ',' ',' ',' ',' '},
};

// wdr(line mode 2frame) menu info
static ROMDATA OSD_MENU_INFO L2WDRSetMenuInfo[] = {
	// menu,				attb,		Item,						init,					max,								title
	{(PWORD)WDRFramView,	MENU_ITEM,	(PWORD)L2WDRSetWDRViewItem,	MISP_WDR_FVIEW_WDR,		GetArrayMax(L2WDRSetWDRViewItem)/2,	(PWORD)L2WDRSetMenuTitle	},
#if WDR_USE_MANU_TM
	{(PWORD)WDRStrength,	MENU_VALUE, NULL,						12,						29,									(PWORD)L2WDRSetMenuTitle	},
#else
	{(PWORD)WDRStrength,	MENU_VALUE, NULL,						3,						8,									(PWORD)L2WDRSetMenuTitle	},
#endif
#if WDR_TM_SIZE_CTRL
	{(PWORD)WDRContrast,	MENU_VALUE,	NULL,						2,						5,									(PWORD)L2WDRSetMenuTitle	},
#else
	{(PWORD)WDRGhostRem,	MENU_SKIP,	NULL,						0,						14,									(PWORD)L2WDRSetMenuTitle	},
#endif
	{(PWORD)WDRAutoExpo,	MENU_ITEM,	(PWORD)xWDRSetWDRAutoItem,	MISP_WDR_AE_AUTO,		GetArrayMax(xWDRSetWDRAutoItem)/2,	(PWORD)L2WDRSetMenuTitle	},
	{(PWORD)WDRAETarget,	MENU_VALUE,	NULL,						10,						19,									(PWORD)L2WDRSetMenuTitle	},
	{(PWORD)WDRSensGain,	MENU_VALUE,	NULL,						0,						19,									(PWORD)L2WDRSetMenuTitle	},
	{(PWORD)WDRLensIris,	MENU_VALUE, NULL,						19,						19,									(PWORD)L2WDRSetMenuTitle	},
	{(PWORD)WDRSensShut,	MENU_VALUE, NULL,						19,						19,									(PWORD)L2WDRSetMenuTitle	},
#if L2WDR_HOLD_RATIO
	{(PWORD)WDRExpRatio,	MENU_SKIP,	(PWORD)L2WDRSetExpRtoItem,	1,						GetArrayMax(L2WDRSetExpRtoItem)/2,	(PWORD)L2WDRSetMenuTitle	},
#else
	{(PWORD)WDRExpRatio,	MENU_ITEM,	(PWORD)L2WDRSetExpRtoItem,	1,						GetArrayMax(L2WDRSetExpRtoItem)/2,	(PWORD)L2WDRSetMenuTitle	},
#endif
	{(PWORD)RetMenu,		MENU_EXIT,	(PWORD)BlankItem,			0,						GetArrayMax(BlankItem)/2,			(PWORD)L2WDRSetMenuTitle	},
};

//--------------------------------------------------------------------------------------------------------------------------
//  10-11-c. TMWDR - Tone map only
//--------------------------------------------------------------------------------------------------------------------------

// wdr(tone map) menu title
static ROMDATA WORD TMWDRSetMenuTitle[][MenuTitleCol]	= {
	// eng
	{' ','W','D','R',' ','(','T','o','n','e','-','m','a','p',' ','o','n','l','y',')',' ',' ',' ',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{0,292,279,293,0,'(','T','o','n','e','-','m','a','p',' ','o','n','l','y',')',' ',' ',' ',' ',' ',' '},
	{0},
};

// wdr(tone map) menu item
// {'F','R','A','M','E',' ','V','I','E','W',' ','S','E','L'}
static ROMDATA WORD TMWDRSetWDRViewItem[][MenuItemCol]	= {
	// eng
	{'W','D','R',' ','O','N',' ',' ',' ',' '},
	{'D','I','S','P','[','1','1',':','0',']'},
	{'D','I','S','P','[','1','3',':','2',']'},
	{'D','I','S','P','[','1','5',':','4',']'},
	// chn
	{292,279,293,45,285},						// wdr on
	{'D','I','S','P','[','1','1',':','0',']'},
	{'D','I','S','P','[','1','3',':','2',']'},
	{'D','I','S','P','[','1','5',':','4',']'},
};

// wdr(tone map) menu info
static ROMDATA OSD_MENU_INFO TMWDRSetMenuInfo[] = {
	// menu,				attb,		Item,						init,					max,								title
	{(PWORD)WDRFramView,	MENU_ITEM,	(PWORD)TMWDRSetWDRViewItem,	MISP_WDR_FVIEW_WDR,		GetArrayMax(TMWDRSetWDRViewItem)/2,	(PWORD)TMWDRSetMenuTitle	},
#if WDR_USE_MANU_TM
	{(PWORD)WDRStrength,	MENU_VALUE, NULL,						12,						29,									(PWORD)TMWDRSetMenuTitle	},
#else
	{(PWORD)WDRStrength,	MENU_VALUE, NULL,						3,						8,									(PWORD)TMWDRSetMenuTitle	},
#endif
#if WDR_TM_SIZE_CTRL
	{(PWORD)WDRContrast,	MENU_VALUE,	NULL,						3,						5,									(PWORD)TMWDRSetMenuTitle	},
#endif
	{(PWORD)WDRAutoExpo,	MENU_ITEM,	(PWORD)xWDRSetWDRAutoItem,	MISP_WDR_AE_AUTO,		GetArrayMax(xWDRSetWDRAutoItem)/2,	(PWORD)TMWDRSetMenuTitle	},
	{(PWORD)WDRAETarget,	MENU_VALUE,	NULL,						10,						19,									(PWORD)TMWDRSetMenuTitle	},
	{(PWORD)WDRSensGain,	MENU_VALUE,	NULL,						0,						19,									(PWORD)TMWDRSetMenuTitle	},
	{(PWORD)WDRLensIris,	MENU_VALUE,	NULL,						19,						19,									(PWORD)TMWDRSetMenuTitle	},
	{(PWORD)WDRSensShut,	MENU_VALUE,	NULL,						19,						19,									(PWORD)TMWDRSetMenuTitle	},
	{(PWORD)RetMenu,		MENU_EXIT,	(PWORD)BlankItem,			0,						GetArrayMax(BlankItem)/2,			(PWORD)TMWDRSetMenuTitle	},
};

//--------------------------------------------------------------------------------------------------------------------------
//  10-11-d. FRWDR - Frame by Frame
//--------------------------------------------------------------------------------------------------------------------------

// wdr(frame mode) menu title
static ROMDATA WORD FRWDRSetMenuTitle[][MenuTitleCol]	= {
	// eng
	{' ','W','D','R',' ','(','F','r','a','m','e',' ','b','y',' ','F','r','a','m','e',' ','M','o','d','e',')'},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{0,292,279,293,0,'(','F','r','a','m','e',' ','b','y',' ','F','r','a','m','e',' ','M','o','d','e',')'},
	{0},
};

// wdr(frame mode) menu item
// {'F','R','A','M','E',' ','V','I','E','W',' ','S','E','L'}
static ROMDATA WORD FRWDRSetWDRViewItem[][MenuItemCol]	= {
	// eng
	{'W','D','R',' ','O','N',' ',' ',' ',' '},
	{'L','O','N','G',' ',' ',' ',' ',' ',' '},
	{'S','H','O','R','T',' ',' ',' ',' ',' '},
	// chn
	{292,279,293,45,285},	// wdr on
	{417,367},				// long
	{510,367},				// short
};

// {'S','H','U','T','T','E','R',' ','R','A','T','I','O'}
static ROMDATA WORD FRWDRSetExpRtoItem[][MenuItemCol]	= {
	// eng
	{'1',':','1','6',' ',' ',' ',' ',' ',' '},
	{'1',':','3','2',' ',' ',' ',' ',' ',' '},
	// chn
	{'1',':','1','6',' ',' ',' ',' ',' ',' '},
	{'1',':','3','2',' ',' ',' ',' ',' ',' '},
};

// wdr(frame mode) menu info
static ROMDATA OSD_MENU_INFO FRWDRSetMenuInfo[] = {
	// menu,				attb,		Item,						init,					max,								title
	{(PWORD)WDRFramView,	MENU_ITEM,	(PWORD)FRWDRSetWDRViewItem,	MISP_WDR_FVIEW_WDR,		GetArrayMax(FRWDRSetWDRViewItem)/2,	(PWORD)FRWDRSetMenuTitle	},
#if WDR_USE_MANU_TM
	{(PWORD)WDRStrength,	MENU_VALUE, NULL,						12,						29,									(PWORD)FRWDRSetMenuTitle	},
#else
	{(PWORD)WDRStrength,	MENU_VALUE, NULL,						3,						8,									(PWORD)FRWDRSetMenuTitle	},
#endif
#if WDR_TM_SIZE_CTRL
	{(PWORD)WDRContrast,	MENU_VALUE,	NULL,						2,						5,									(PWORD)FRWDRSetMenuTitle	},
#else
	{(PWORD)WDRGhostRem,	MENU_SKIP,	NULL,						0,						14,									(PWORD)FRWDRSetMenuTitle	},
#endif
	{(PWORD)WDRAutoExpo,	MENU_ITEM,	(PWORD)xWDRSetWDRAutoItem,	MISP_WDR_AE_AUTO,		GetArrayMax(xWDRSetWDRAutoItem)/2,	(PWORD)FRWDRSetMenuTitle	},
	{(PWORD)WDRAETarget,	MENU_VALUE,	NULL,						10,						19,									(PWORD)FRWDRSetMenuTitle	},
	{(PWORD)WDRSensGain,	MENU_VALUE,	NULL,						0,						19,									(PWORD)FRWDRSetMenuTitle	},
	{(PWORD)WDRLensIris,	MENU_VALUE,	NULL,						19,						19,									(PWORD)FRWDRSetMenuTitle	},
	{(PWORD)WDRSensShut,	MENU_VALUE,	NULL,						19,						19,									(PWORD)FRWDRSetMenuTitle	},
#if defined(__USE_MDIN_i500__)  // MDIN-i500 -- default 1:16
	{(PWORD)WDRExpRatio,	MENU_ITEM,	(PWORD)FRWDRSetExpRtoItem,	0,						GetArrayMax(FRWDRSetExpRtoItem)/2,	(PWORD)FRWDRSetMenuTitle 	},
#else 							// MDIN-i51X (i510, i540, i550)
	{(PWORD)WDRExpRatio,	MENU_ITEM,	(PWORD)FRWDRSetExpRtoItem,	1,						GetArrayMax(FRWDRSetExpRtoItem)/2,	(PWORD)FRWDRSetMenuTitle	},
#endif
	{(PWORD)RetMenu,		MENU_EXIT,	(PWORD)BlankItem,			0,						GetArrayMax(BlankItem)/2,			(PWORD)FRWDRSetMenuTitle	},
};

//--------------------------------------------------------------------------------------------------------------------------
//  10-11-e. DGWDR - Single Frame Digital WDR
//--------------------------------------------------------------------------------------------------------------------------

// wdr(single mode) menu title
static ROMDATA WORD DGWDRSetMenuTitle[][MenuTitleCol]	= {
	// eng
	{' ','W','D','R',' ','(','S','i','n','g','l','e',' ','F','r','a','m','e',' ','M','o','d','e',')',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{0,292,279,293,0,'(','S','i','n','g','l','e',' ','F','r','a','m','e',' ','M','o','d','e',')',' ',' '},
	{0},
};

// wdr(single mode) menu info
static ROMDATA OSD_MENU_INFO DGWDRSetMenuInfo[] = {
	// menu,				attb,		Item,				init,	max,						title
#if WDR_USE_MANU_TM
	{(PWORD)WDRStrength,	MENU_VALUE, NULL,				12, 	29,							(PWORD)DGWDRSetMenuTitle	},
#else
	{(PWORD)WDRStrength,	MENU_VALUE, NULL,				3, 		8,							(PWORD)DGWDRSetMenuTitle	},
#endif
#if WDR_TM_SIZE_CTRL
	{(PWORD)WDRContrast,	MENU_VALUE,	NULL,				3,		5,							(PWORD)DGWDRSetMenuTitle	},
#endif
	{(PWORD)RetMenu,		MENU_EXIT,	(PWORD)BlankItem,	0,		GetArrayMax(BlankItem)/2,	(PWORD)DGWDRSetMenuTitle	},
};


//--------------------------------------------------------------------------------------------------------------------------
//  10-12-1. DNR Tuning
//--------------------------------------------------------------------------------------------------------------------------

// dnr(tuning) menu title
static ROMDATA WORD DNRTuneMenuTitle[][MenuTitleCol]	= {
	// eng
	{' ','D','N','R',' ','T','U','N','I','N','G',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{270,271,272,273,395,382},	// dnr tuning
	{0},
};

// dnr(tuning) menu
static ROMDATA WORD DNRDemoMode[][MenuNameCol]			= {{'D','E','M','O','_','M','O','D','E',' ',' ',' ',' ',' '},{348,391,378,369}};
static ROMDATA WORD DNRLowLightLev[][MenuNameCol]		= {{'N','R',' ','S','T','A','T','U','S',' ',' ',' ',' ',' '},{270,271,272,273,0,349,293}};
#if defined(__USE_MDIN_i510__) || defined(__USE_MDIN_i540__) || defined(__USE_MDIN_i550__) 	// i510, i540, i550
static ROMDATA WORD DNRM2DMode[][MenuNameCol]			= {{'N','R',' ','M','i','d','d','l','e','2','D',' ',' ',' '},{270,271,272,273,0,'M','i','d','d','l','e','2','D'}};
static ROMDATA WORD DNRL2DMode[][MenuNameCol]			= {{'N','R',' ','L','a','s','t','2','D',' ',' ',' ',' ',' '},{270,271,272,273,0,'L','a','s','t','2','D'}};
#endif

// dnr(tuning) menu item
static ROMDATA WORD DNRDemoModeItem[][MenuItemCol]	= {
	// eng
	{'O','F','F',' ',' ',' ',' ',' ',' ',' '},
	{'L','E','F','T',' ','O','N',' ',' ',' '},
	{'R','I','G','H','T',' ','O','N',' ',' '},
	// chn
	{284},				// off
	{285,45,359,360},	// left on
	{285,45,361,360},	// right on
};

static ROMDATA WORD DNRLowModeItem[][MenuItemCol]	= {
	// eng
	{'N','O','R','M','A','L',' ',' ',' ',' '},
	{'L','O','W',' ','L','I','G','H','T',' '},
	// chn
	{404,405},		// normal
	{314,263,306},	// low light
};

#if defined(__USE_MDIN_i510__) || defined(__USE_MDIN_i540__) || defined(__USE_MDIN_i550__) 	// i510, i540, i550
static ROMDATA WORD DNRM2DModeItem[][MenuItemCol]	= {
	// eng
	{'O','F','F',' ',' ',' ',' ',' ',' ',' '},
	{'L','O','W',' ',' ',' ',' ',' ',' ',' '},
	{'M','I','D',' ',' ',' ',' ',' ',' ',' '},
	{'H','I','G','H',' ',' ',' ',' ',' ',' '},
	// chn
	{284},	// off
	{314},	// low
	{315},	// mid
	{316},	// high
};

static ROMDATA WORD DNRL2DModeItem[][MenuItemCol]	= {
	// eng
	{'O','F','F',' ',' ',' ',' ',' ',' ',' '},
	{'L','O','W',' ',' ',' ',' ',' ',' ',' '},
	{'M','I','D',' ',' ',' ',' ',' ',' ',' '},
	{'H','I','G','H',' ',' ',' ',' ',' ',' '},
	// chn
	{284},	// off
	{314},	// low
	{315},	// mid
	{316},	// high
};
#endif

// dnr(tuning) menu info
static ROMDATA OSD_MENU_INFO DNRTuneMenuInfo[] = {
	// menu,				attb,		Item,					init,				max,							title
	{(PWORD)DNRDemoMode,	MENU_ITEM,	(PWORD)DNRDemoModeItem,	0,					GetArrayMax(DNRDemoModeItem)/2,	(PWORD)DNRTuneMenuTitle	},
	{(PWORD)DNRLowLightLev,	MENU_FUNC,	(PWORD)DNRLowModeItem,	0,					GetArrayMax(DNRLowModeItem)/2,	(PWORD)DNRTuneMenuTitle	},
#if defined(__USE_MDIN_i510__) || defined(__USE_MDIN_i540__) || defined(__USE_MDIN_i550__) 	// i510, i540, i550
	{(PWORD)DNRM2DMode,		MENU_ITEM,	(PWORD)DNRM2DModeItem,	1,					GetArrayMax(DNRM2DModeItem)/2,	(PWORD)DNRTuneMenuTitle	},
	{(PWORD)DNRL2DMode,		MENU_ITEM,	(PWORD)DNRL2DModeItem,	0,					GetArrayMax(DNRL2DModeItem)/2,	(PWORD)DNRTuneMenuTitle	},
#endif
	{(PWORD)RetMenu,		MENU_EXIT,	(PWORD)BlankItem,		0,					GetArrayMax(BlankItem)/2,		(PWORD)DNRTuneMenuTitle	},
};

//--------------------------------------------------------------------------------------------------------------------------
// 8-6-2-1. BLC Size/Position Menu
//--------------------------------------------------------------------------------------------------------------------------

// blc size position menu info
static ROMDATA OSD_MENU_INFO BLCSizeMenuInfo[] = {
	// menu,				attb,		Item,				init(x),	max(x)
#if defined(__USE_MDIN_i500__)						// MDIN-i500
	{(PWORD)PositionMenu,	MENU_VALUE,	NULL,				15,			48						},
	{(PWORD)SizeMenu,		MENU_VALUE,	NULL,				32,			48						},
#else 												// MDIN-i51X (i510, i540, i550)
	{(PWORD)PositionMenu,	MENU_VALUE,	NULL,				15,			96						},
	{(PWORD)SizeMenu,		MENU_VALUE,	NULL,				32,			96						},
#endif
	{(PWORD)RetMenu,		MENU_EXIT,	(PWORD)BlankItem,	0,			GetArrayMax(BlankItem)/2},
};

// blc size position (y) 
static ROMDATA BYTE BLCSizeYInit[] 	= {11, 22};		// position(Y), size(Y)
#if defined(__USE_MDIN_i500__)							// MDIN-i500
static ROMDATA BYTE BLCSizeYMax[] 		= {33, 33};		// position(Y), size(Y)
#else 													// MDIN-i51X (i510, i540, i550)
static ROMDATA BYTE BLCSizeYMax[] 		= {67, 67};		// position(Y), size(Y)
#endif


//--------------------------------------------------------------------------------------------------------------------------
// 8-6-3-1. HSBLC Size/Position Menu
//--------------------------------------------------------------------------------------------------------------------------

// hsblc size position menu info
static ROMDATA OSD_MENU_INFO HSBLCSizeMenuInfo[] = {
	// menu,				attb,		Item,				init(x),	max(x)
#if defined(__USE_MDIN_i500__)						// MDIN-i500
	{(PWORD)PositionMenu,	MENU_VALUE,	NULL,				15,			48						},
	{(PWORD)SizeMenu,		MENU_VALUE,	NULL,				32,			48						},
#else 												// MDIN-i51X (i510, i540, i550)
	{(PWORD)PositionMenu,	MENU_VALUE,	NULL,				15,			96						},
	{(PWORD)SizeMenu,		MENU_VALUE,	NULL,				32,			96						},
#endif
	{(PWORD)RetMenu,		MENU_EXIT,	(PWORD)BlankItem,	0,			GetArrayMax(BlankItem)/2},
};

// hsblc size position (y) 
static ROMDATA BYTE HSBLCSizeYInit[] 	= {11, 22};		// position(Y), size(Y)
#if defined(__USE_MDIN_i500__)							// MDIN-i500
static ROMDATA BYTE HSBLCSizeYMax[] 	= {33, 33};		// position(Y), size(Y)
#else 													// MDIN-i51X (i510, i540, i550)
static ROMDATA BYTE HSBLCSizeYMax[] 	= {67, 67};		// position(Y), size(Y)
#endif

//--------------------------------------------------------------------------------------------------------------------------
// 8-4-4-1. Motion Detect Size/Position Menu
//--------------------------------------------------------------------------------------------------------------------------

// md size position menu info
static ROMDATA OSD_MENU_INFO MDSizeMenuInfo[] = {
	// menu,				attb,		Item,				init(x),	max(x)
	{(PWORD)PositionMenu,	MENU_VALUE,	NULL,				0,			255						},
	{(PWORD)SizeMenu,		MENU_VALUE,	NULL,				0,			255						},
	{(PWORD)RetMenu,		MENU_EXIT,	(PWORD)BlankItem,	0,			GetArrayMax(BlankItem)/2},
};

// md size position (y) 
static ROMDATA BYTE MDSizeYInit[] 	= {0, 0};		// position(Y), size(Y)
static ROMDATA BYTE MDSizeYMax[] 	= {134, 135};		// position(Y), size(Y)


//--------------------------------------------------------------------------------------------------------------------------
// 8-1-1-1. D-ZOOM Ratio/Position Menu
//--------------------------------------------------------------------------------------------------------------------------

// dzoom ratio menu
static ROMDATA WORD DZRatMenu[][MenuNameCol]		= {{'R','A','T','I','O',' ',' ',' ',' ',' ',' ',' ',' ',' '},{444,368}};

// dzoom ratio menu info
static ROMDATA OSD_MENU_INFO DZCtrlMenuInfo[] = {
	// menu,				attb,		Item,				init(x),	max(x)
	{(PWORD)DZRatMenu,		MENU_VALUE,	NULL,				0,			50										},
	{(PWORD)PositionMenu,	MENU_VALUE,	NULL,				120,		240										},
	{(PWORD)RetMenu,		MENU_EXIT,	(PWORD)BlankItem,	0,			GetArrayMax(BlankItem)/2},
};

// dzoom ratio & position (y) 
static ROMDATA BYTE DZCtrlYInit[] 	= {0, 120};			// ratio(Y), position(Y)
static ROMDATA BYTE DZCtrlYMax[] 	= {50, 240};		// ratio(Y), Position(Y), step:(Full - zoom)/120


//--------------------------------------------------------------------------------------------------------------------------
// 8-1-4-1. PIP Position Menu
//--------------------------------------------------------------------------------------------------------------------------

// pip size position menu info
static ROMDATA OSD_MENU_INFO PIPPosiMenuInfo[] = {
	// menu,				attb,		Item,				init(x),	max(x)
	{(PWORD)PositionMenu,	MENU_VALUE,	NULL,				10,			10						},
//	{(PWORD)SizeMenu,		MENU_VALUE,	NULL,				0,			60						},
	{(PWORD)RetMenu,		MENU_EXIT,	(PWORD)BlankItem,	0,			GetArrayMax(BlankItem)/2},
};

// pip size position (y) 
static ROMDATA BYTE PIPPosiYInit[]	= {10};				// position(Y)
static ROMDATA BYTE PIPPosiYMax[] 	= {10};				// position(Y)


//--------------------------------------------------------------------------------------------------------------------------
// 10-7-3-1. Sensor TP Size/Position Menu
//--------------------------------------------------------------------------------------------------------------------------

// sensor tp size position menu info
static ROMDATA OSD_MENU_INFO TPSizeMenuInfo[] = {
	// menu,				attb,		Item,				init(x),	max(x)
	{(PWORD)PositionMenu,	MENU_VALUE,	NULL,				0,			60						},
	{(PWORD)SizeMenu,		MENU_VALUE,	NULL,				60,			60						},
	{(PWORD)RetMenu,		MENU_EXIT,	(PWORD)BlankItem,	0,			GetArrayMax(BlankItem)/2},
};

// sensor tp size position (y) 
static ROMDATA BYTE TPSizeYInit[] = {0, 34};				// position(Y), size(Y)
static ROMDATA BYTE TPSizeYMax[] 	= {34, 34};				// position(Y), size(Y)


//--------------------------------------------------------------------------------------------------------------------------
// 12-1.Debug Menu
//--------------------------------------------------------------------------------------------------------------------------

// debug menu title
static ROMDATA WORD DebugMenuTitle[][MenuTitleCol]	= {
	// eng
	{'D','E','B','U','G',' ','M','E','N','U',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '}, 
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{'D','E','B','U','G',' ','M','E','N','U'},	// debug menu
	{0},
};

// debug menu
static ROMDATA WORD DebugMode[][MenuNameCol]	= {{'D','E','B','U','G',' ','M','O','D','E',' ',' ',' ',' '},{'D','E','B','U','G',' ','M','O','D','E'}};
static ROMDATA WORD AgingTest[][MenuNameCol]	= {{'A','G','I','N','G',' ','T','E','S','T',' ',' ',' ',' '},{'A','G','I','N','G',' ','T','E','S','T'}};
static ROMDATA WORD VectorScope[][MenuNameCol]	= {{'V','E','C','T','O','R',' ','S','C','O','P','E',' ',' '},{'V','E','C','T','O','R',' ','S','C','O','P','E'}};
static ROMDATA WORD FactorySetup[][MenuNameCol]	= {{'F','A','C','T','O','R','Y',' ','S','E','T','U','P',' '},{'F','A','C','T','O','R','Y',' ','S','E','T','U','P'}};

// debug menu item
static ROMDATA WORD DebugModeItem[][MenuItemCol] = {
	// eng
	{'O','F','F',' ',' ',' ',' ',' ',' ',' '},
	{'A','E',' ',' ',' ',' ',' ',' ',' ',' '},
	{'A','F',' ',' ',' ',' ',' ',' ',' ',' '},
	{'A','W','B',' ',' ',' ',' ',' ',' ',' '},
	{'A','E',' ','C','O','N',' ',' ',' ',' '},
	{'A','F',' ','C','O','N',' ',' ',' ',' '},
	{'A','W','B',' ','C','O','N',' ',' ',' '},
	// chn
	{'O','F','F'},	// off
	{'A','E'},		// ae
	{'A','F'},		// af
	{'A','W','B'},	// awb
	{'A','E',' ','C','O','N'},		// ae con
	{'A','F',' ','C','O','N'},		// af con
	{'A','W','B',' ','C','O','N'},	// awb con
};

// debug menu info
static ROMDATA OSD_MENU_INFO DebugMenuInfo[] = {
	// menu,			attb,			Item,					init,		max,							title
	{(PWORD)DebugMode,	MENU_ITEM,		(PWORD)DebugModeItem,	0,			GetArrayMax(DebugModeItem)/2,	(PWORD)DebugMenuTitle	},
	{(PWORD)AgingTest,	MENU_ITEM,		(PWORD)OnOffItem,		0,			GetArrayMax(OnOffItem)/2,		(PWORD)DebugMenuTitle	},
	{(PWORD)VectorScope,MENU_SUB,		(PWORD)OnOffSub,		0,			GetArrayMax(OnOffSub)/2,		(PWORD)DebugMenuTitle	},
	{(PWORD)FactorySetup,MENU_SUB,		(PWORD)SubItem,			0,			GetArrayMax(SubItem)/2,			(PWORD)DebugMenuTitle	},
	{(PWORD)CCorrect,	MENU_SUB,		(PWORD)SubItem,			0,			GetArrayMax(SubItem)/2,			(PWORD)DebugMenuTitle	},		
	{(PWORD)RetMenu,	MENU_FUNC,		(PWORD)BlankItem,		0,			GetArrayMax(BlankItem)/2,		(PWORD)DebugMenuTitle	},
};

//--------------------------------------------------------------------------------------------------------------------------
// 12-3-1.vector scope
//--------------------------------------------------------------------------------------------------------------------------

// vector scope menu title
static ROMDATA WORD VSMenuTitle[][MenuTitleCol]	= {
	// eng
	{'V','E','C','T','O','R',' ','S','C','O','P','E',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '}, 
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{'V','E','C','T','O','R',' ','S','C','O','P','E'},	// vector scope menu
	{0},
};

// vector scope menu
static ROMDATA WORD VSArea[][MenuNameCol]	= {{'S','C','A','N',' ','A','R','E','A',' ',' ',' ',' ',' '},{'S','C','A','N',' ','A','R','E','A'}};
static ROMDATA WORD VSPosiX[][MenuNameCol]	= {{' ','P','O','S','I','T','I','O','N','-','X',' ',' ',' '},{' ','P','O','S','I','T','I','O','N','-','X'}};
static ROMDATA WORD VSPosiY[][MenuNameCol]	= {{' ','P','O','S','I','T','I','O','N','-','Y',' ',' ',' '},{' ','P','O','S','I','T','I','O','N','-','Y'}};
static ROMDATA WORD VSSizeX[][MenuNameCol]	= {{' ','S','I','Z','E','-','X',' ',' ',' ',' ',' ',' ',' '},{' ','S','I','Z','E','-','X'}};
static ROMDATA WORD VSSizeY[][MenuNameCol]	= {{' ','S','I','Z','E','-','Y',' ',' ',' ',' ',' ',' ',' '},{' ','S','I','Z','E','-','Y'}};
static ROMDATA WORD VSDraw[][MenuNameCol]	= {{'D','R','A','W',' ','S','C','O','P','E',' ',' ',' ',' '},{'D','R','A','W',' ','S','C','O','P','E'}};

// vector scope menu item
static ROMDATA WORD VSAreaItem[][MenuItemCol] = {
	// eng
	{'F','U','L','L',' ',' ',' ',' ',' ',' '},
	{'U','S','E','R',' ','A','R','E','A',' '},
	// chn
	{'F','U','L','L'},						// full
	{'U','S','E','R',' ','A','R','E','A'},	// user area
};

// vector scope menu info
static ROMDATA OSD_MENU_INFO VSMenuInfo[] = {
	// menu,			attb,			Item,					init,		max,						title
	{(PWORD)VSArea,		MENU_ITEM,		(PWORD)VSAreaItem,		0,			GetArrayMax(VSAreaItem)/2,	(PWORD)VSMenuTitle	},
	{(PWORD)VSPosiX,	MENU_VALUE,		NULL,					0,			128,						(PWORD)VSMenuTitle	},
	{(PWORD)VSPosiY,	MENU_VALUE,		NULL,					0,			68,							(PWORD)VSMenuTitle	},
	{(PWORD)VSSizeX,	MENU_VALUE,		NULL,					0,			128,						(PWORD)VSMenuTitle	},
	{(PWORD)VSSizeY,	MENU_VALUE,		NULL,					0,			68,							(PWORD)VSMenuTitle	},
	{(PWORD)VSDraw,		MENU_FUNC,		(PWORD)WaitOkItem,		0,			GetArrayMax(WaitOkItem)/2,	(PWORD)VSMenuTitle	},
	{(PWORD)RetMenu,	MENU_EXIT,		(PWORD)BlankItem,		0,			GetArrayMax(BlankItem)/2,	(PWORD)VSMenuTitle	},
};


//--------------------------------------------------------------------------------------------------------------------------
// 12-4-1.factory setup
//--------------------------------------------------------------------------------------------------------------------------

// factory setup menu title
static ROMDATA WORD FSMenuTitle[][MenuTitleCol]	= {
	// eng
	{'F','A','C','T','O','R','Y',' ','S','E','T','U','P',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '}, 
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},
	// chn
	{'F','A','C','T','O','R','Y',' ','S','E','T','U','P'},	// factory setup
	{0},
};

// factory setup menu
static ROMDATA WORD PwmIrisTune[][MenuNameCol]	= {{'P','W','M',' ','I','R','I','S',' ','T','U','N','E',' '},{'P','W','M',' ','I','R','I','S',' ','T','U','N','E'}};
static ROMDATA WORD PwmIrisSpeed[][MenuNameCol]	= {{'P','W','M',' ','I','R','I','S',' ','S','P','E','E','D'},{'P','W','M',' ','I','R','I','S',' ','S','P','E','E','D'}};

// factory setup menu item

// factory setup menu info
static ROMDATA OSD_MENU_INFO FSMenuInfo[] = {
	// menu,				attb,		Item,					init,		max,						title
	{(PWORD)PwmIrisTune,	MENU_FUNC,	(PWORD)WaitOkItem,		0,			GetArrayMax(WaitOkItem)/2,	(PWORD)FSMenuTitle	},
	{(PWORD)PwmIrisSpeed,	MENU_VALUE,	NULL,					3,			5,							(PWORD)FSMenuTitle	},
	{(PWORD)RetMenu,		MENU_EXIT,	(PWORD)BlankItem,		0,			GetArrayMax(BlankItem)/2,	(PWORD)FSMenuTitle	},
};

//--------------------------------------------------------------------------------------------------------------------------
// 12-5-1.Color Correction Fine tune setup
//--------------------------------------------------------------------------------------------------------------------------
// Title : share ColorCorrMenuTitle
static ROMDATA char CCFtuneMenuTitle[][MenuTitleCol]	= {
	// eng
	{'C','O','L','O','R',' ','C','O','R','R','E','C','T','I','O','N',' ','T','U','N','I','N','G',' ',' ',' '},
	{' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '},	
	// chn
	{297,296,432,404,45,395,382},	// cc - tuning
	{0},	
};

static ROMDATA char CCFTypeSel[][MenuNameCol]	= {{'C','C','F',' ','T','Y','P','E',' ','S','E','L',' ',' '},{'C','C','F',' ','T','Y','P','E',' ','S','E','L',' '}};
static ROMDATA char CCFGain[][MenuNameCol]	= {{'C','C','F',' ','G','A','I','N',' ',' ',' ',' ',' ',' '},{'C','C','F',' ','G','A','I','N',' ',' ',' ',' ',' '}};
static ROMDATA char CCFBalance[][MenuNameCol]	= {{'C','C','F',' ','B','A','L','A','N','C','E',' ',' ',' '},{'C','C','F',' ','B','A','L','A','N','C','E',' ',' '}};
static ROMDATA char CCFTypeApply[][MenuNameCol]		= {{'C','C','F',' ','T','.','A','P','P','L','I','E','D',' '},{'C','C','F',' ','T','.','A','P','P','L','I','E','D'}};
static ROMDATA char CCFUartPrint[][MenuNameCol]		= {{'C','C','F',' ','P','R','I','E','N','T',' ',' ',' ',' '},{'C','C','F',' ','P','R','I','N','T',' ',' ',' ',' '}};

static ROMDATA char CCFTypeSeltem[][MenuItemCol] = {
	// eng
	{'R',' ','L','I','N','E',' ','T','Y','1'},
	{'R',' ','L','I','N','E',' ','T','Y','2'},
	{'G',' ','L','I','N','E',' ','T','Y','1'},	
	{'B',' ','L','I','N','E',' ','T','Y','1'},
	{'B',' ','L','I','N','E',' ','T','Y','2'},	
	// chn
	{'R',' ','L','I','N','E',' ','T','Y','1'},
	{'R',' ','L','I','N','E',' ','T','Y','2'},
	{'G',' ','L','I','N','E',' ','T','Y','1'},	
	{'B',' ','L','I','N','E',' ','T','Y','1'},
	{'B',' ','L','I','N','E',' ','T','Y','2'},	
};


static ROMDATA char CCFTypeApplyItem[][MenuItemCol] = {
	// eng
	{'R','1','G','1','B','1',' ',' ',' ',' '},
	{'R','1','G','1','B','2',' ',' ',' ',' '},
	{'R','2','G','1','B','1',' ',' ',' ',' '},
	{'R','2','G','1','B','2',' ',' ',' ',' '},
	// chn
	{'R','1','G','1','B','1'},
	{'R','1','G','1','B','2'},
	{'R','2','G','1','B','1'},
	{'R','2','G','1','B','2'}, 
};


// Color Correction menu info
static ROMDATA OSD_MENU_INFO CCFtuneMenuInfo[] = {
	// menu,						attb,		Item,				init,				max,						title
	{(PWORD)CCFTypeSel,		MENU_ITEM,	(PWORD)CCFTypeSeltem,		0,		GetArrayMax(CCFTypeSeltem)/2,		(PWORD)CCFtuneMenuTitle	},	
	{(PWORD)CCFGain,		MENU_VALUE,	 NULL,				0,				100,					(PWORD)CCFtuneMenuTitle	},
	{(PWORD)CCFBalance,		MENU_VALUE,	 NULL,				50,				100,					(PWORD)CCFtuneMenuTitle	},	
	{(PWORD)CCFTypeApply,	MENU_ITEM,	(PWORD)CCFTypeApplyItem,		0,		GetArrayMax(CCFTypeApplyItem)/2,		(PWORD)CCFtuneMenuTitle	},		
	{(PWORD)CCFUartPrint,	MENU_FUNC,	(PWORD)WaitOkItem,	0,		GetArrayMax(WaitOkItem)/2,	(PWORD)CCFtuneMenuTitle	},	
	{(PWORD)RetMenu,		MENU_EXIT,	(PWORD)BlankItem,	0,		GetArrayMax(BlankItem)/2,		(PWORD)CCFtuneMenuTitle	},
};
#endif	/* __OSDMENU_H__ */


#endif	/* __OSDMENU_H__ */
